Compteur qui ne marche pas

Résolu/Fermé
delavega470 Messages postés 298 Date d'inscription dimanche 9 février 2014 Statut Membre Dernière intervention 24 mars 2020 - 11 août 2017 à 18:38
delavega470 Messages postés 298 Date d'inscription dimanche 9 février 2014 Statut Membre Dernière intervention 24 mars 2020 - 12 août 2017 à 09:55
bonjour à tous j'ai crée des dossiers et enregistré des commandes sous format pdf l'ennuis c'est que le doucement pdf je le veux sous cette forme com_1.pdf,com_2.pdf ainsi de suit, le numero ne compte pas pour le premier enregistrement j'ai bien cette forme com_1.pdf pour les autres toujours com_2.pdf voici le code quelqu'un peu me dire ou se trouve l'erreur et m'aider à le corriger
<?php
    $num = 1;
 $nom_dossier= $data['id_cli'];
$structure = 'commande/'.$nom_dossier.'/';
mkdir($structure,0777,true); 
$structure = 'commande/'.$nom_dossier.'/';
$chemin = ''.$structure.'com_'.$num.'.pdf';
  $file = 'com_'.$num.'.pdf';
  $file_url=''.$structure.''.$file.'';
$envoie = $bd->query('SELECT lib_com from commande WHERE lib_com = "'.$file.'" AND id_cli="'.$_SESSION['id_cli'].'"' );
$resultat=$envoie->fetch();
 if(!empty($resultat['lib_com']) )
 {
  $num_new = $num++;
  $file = 'com_'.$num_new.'.pdf';
  $envoie = $bd->prepare('INSERT INTO commande (date_com,id_cli,lib_com,url_file) VALUES(:date_com,:id_cli,:lib_com,:url_file)');
$resultat=$envoie->execute (array('date_com'=>$today,'id_cli'=>$_SESSION['id_cli'],'lib_com'=>$file,'url_file'=>$file_url));
$delete_panier= $bd->query("DELETE FROM panier WHERE cookie='".$cookie."'");
 } else { $num = 1; 
  $file = 'com_'.$num.'.pdf';
 $envoie = $bd->prepare('INSERT INTO commande (date_com,id_cli,lib_com,url_file) VALUES(:date_com,:id_cli,:lib_com,:url_file)');
 $resultat=$envoie->execute (array('date_com'=>$today,'id_cli'=>$_SESSION['id_cli'],'lib_com'=>$file,'url_file'=>$file_url));
 $delete_panier= $bd->query("DELETE FROM panier WHERE cookie='".$cookie."'");
}
?>

4 réponses

NHenry Messages postés 15112 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 13 avril 2024 330
Modifié le 11 août 2017 à 18:44
Commence par bien indenter ton code, pour mettre en évidence les blocs de code.
Ensuite, essayes de mettre des "echo" pour voir comment ça se passe et débugger.

J'interviens principalement en VB6 et VB.NET, avec un peu de C#, mais la modération m'amène souvent sur d'autre langages.
En VB.NET pensez à activer "Option Explicit" et "Option Strict"
0
delavega470 Messages postés 298 Date d'inscription dimanche 9 février 2014 Statut Membre Dernière intervention 24 mars 2020 48
Modifié le 11 août 2017 à 19:30
$num_new egale toujours 2 et je ne sais pas pourquoi
0
yg_be Messages postés 22692 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 16 avril 2024 1 471
Modifié le 11 août 2017 à 19:51
cela me semble normal: tu n'as prévu que 1 ou 2: ton programme fonctionne donc comme il est conçu.
0
yg_be Messages postés 22692 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 16 avril 2024 1 471
11 août 2017 à 20:01
une erreur, à corriger:
- tu ne modifies pas $file_url quand tu modifies $file, puis tu enregistres la mauvaise valeur de $file_url
une suggestion: enregistre $num dans ta table, tu pourras ensuite facilement rechercher le $num maximum, et faire +1 pour la commande suivante
- autre suggestion: si tu as un champ numérique unique dans ta table commande, tu pourrais utiliser ce champ pour créer ton nom de fichier.
0
jordane45 Messages postés 38136 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 16 avril 2024 4 649
11 août 2017 à 20:07
C'est marrant. .. ca me fait penser a ton autre discussion : https://forums.commentcamarche.net/forum/affich-34780889-probleme-pour-creer-code-commande
0
delavega470 Messages postés 298 Date d'inscription dimanche 9 février 2014 Statut Membre Dernière intervention 24 mars 2020 48
12 août 2017 à 09:55
Merci yg_be
0