Compteur qui ne marche pas

Résolu
delavega470 Messages postés 298 Date d'inscription   Statut Membre Dernière intervention   -  
delavega470 Messages postés 298 Date d'inscription   Statut Membre Dernière intervention   -
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."'");
}
?>
A voir également:

4 réponses

NHenry Messages postés 15219 Date d'inscription   Statut Modérateur Dernière intervention   365
 
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   Statut Membre Dernière intervention   48
 
$num_new egale toujours 2 et je ne sais pas pourquoi
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584
 
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 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584
 
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 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
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   Statut Membre Dernière intervention   48
 
Merci yg_be
0