Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1616 connectés 

 


Dernière réponse
Sujet : PHP retour du resultat d'une requete>condition
HappyHarry mouairf ... l'optimisation c faire au plus juste avec la situation qui se présente ... dans ton cas, vu que tu ne PEUT PAS avoir 2 fois le meme nom de cd, le while est TOTALEMENT inutile ...
mais bon ... chacun fait comme il veut

Votre réponse
Nom d'utilisateur    Pour poster, vous devez être inscrit sur ce forum .... si ce n'est pas le cas, cliquez ici !
Le ton de votre message                        
                       
Votre réponse


[b][i][u][strike][spoiler][fixed][cpp][url][email][img][*]   
 
   [quote]
 

Options

 
Vous avez perdu votre mot de passe ?


Vue Rapide de la discussion
HappyHarry mouairf ... l'optimisation c faire au plus juste avec la situation qui se présente ... dans ton cas, vu que tu ne PEUT PAS avoir 2 fois le meme nom de cd, le while est TOTALEMENT inutile ...
mais bon ... chacun fait comme il veut
jultey

Citation :

// On envoie la requete
 $req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error()) ;
 
// Si on obtient une réponse, c est que le Cd existe déjà
        while (list($nom)=mysql_fetch_row($req))
 {
 $data=$nom ;
 }
 
       if($data)
       {
       // Le CD existe déja
       print("$cd_nom existe déja" ) ;
       }
// Pour insérer un CD, $data doit être nul
       else
       {...


 
Voila, comme ca ca marche aussi.
Le while doit pas servie a grand chose mais en general on obtient plusieurs lignes donc je crois que toujours le mettre n'est effectivement pas une mauvaise chose...
Merci de m'avoir aider... ;)  
Promis, une fois fini, je propose tout ca au téléchargement !!!

massanu je sais pas du tout si c les regles mais moi je fait comme ca
HappyHarry ben franchement le while ne sert a rien si le nom du cd est clé de ta table !
jultey Je viens de faire 2-3 essai avec la correction de faute d'ortho et apparemnt ca marche.
je vais quand même faire le while pour 'rester dans les règles'
massanu meme avec un seul resultat oui tu doit faire le while
 
essaye de toute facon ta rien a perdre
jultey Mais dans ce cas la, je devrai n'avoir qu'un seul resultat ( enfin qu'une seue ligne ) vu que je ne doit avoir qu'un cd du même nom. Je suis quand même obligé de faire un while ?  
 
De plus, je viens de trouver un faute d'orthogrpahe qui pourrait expliquer le 3eme chmaps manquant. J'essaie avec la correction :
 

Citation :

<input type="text" name="cd_pace_restante">


 
est devenu
 

Citation :

<input type="text" name="cd_place_restante">


 
je ne l'avais pas mit au debut pour ne pas surcharger le sujet de ma question...

massanu tfasson tu peut pas faire ca.
Tu peut pas sortir un resultat comme ca tu doit le parcourir dabord exemple dans ton cas mettre
 
while (list($nom)=mysql_fetch_row($req))
{
$data=$nom
}
 
ensuite pour le test c pareil, tu te fait une requete qui te sors tout tes cd
 
$sql="SELECT cd_nom FROM cd";
$req = mysql_query($sql);
 
tu met ca dans un while comme precedemment et dedans tu feras ton test
jultey Non, ca ne fait rien. Toujours la même erreur. D'ailleurs c'est, je pense, pas la peine de mettre = ou == car j'ai deja stoclé le resultat dans $data quelques lignes au dessus...
 
Ca donne maintenant :

Citation :

// On stock le résultat dans $data
                $data = mysql_fetch_array($req) ;
 
    // On test si on a un CD portant déja le nom : Donc $data doit être nul
        // Si on obtient une réponse, c est que le Cd existe déjà
                if($data)
                {
                // Le CD existe déja
                 print("$cd_nom existe déja" ) ;
                }
        // Pour insérer un CD, $data doit être nul
                else
                {...

massanu if($data = mysql_fetch_array($req))  
 
change ca en  :
 
if($data [B]==[/B] mysql_fetch_array($req))
jultey Salut,  
en ce moment, je suis en train de me faire une petite interface de gestion de mes CD ( je vous la livrerai pour vos commentaires et remarques une fois terminée ).
Mais pour l'instant, je plante sur un pb :
 
Apparement je passe jamais dans le if et toujours dans le else car j'obtiens une erreur :  
 

Citation :

Erreur SQL !
INSERT INTO cd VALUES ('cd24', '', '') ;
Duplicata du champ 'cd24' pour la clef 1


 
D'ailleurs, normalement, je pense que j'aurais dut obtenir une valeur dans les 3emes '' ... du genre ('cd24', '', '210')
 

Citation :


// On créer la requete SQL : Sélectionner le CD ayant le nom du champ de saisie
  $sql = "SELECT *
          FROM cd
   WHERE cd_nom='$cd_nom' ;" ;
 
  // On envoie la requete
  $req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error()) ;
 
   // On stock le résultat dans $data
                $data = mysql_fetch_array($req) ;
 
    // On test si on a un CD portant déja le nom : Donc $data doit être nul
        // Si on obtient une réponse, c est que le Cd existe déjà
                if($data = mysql_fetch_array($req))
                {
                // Le CD existe déja
                 print("$cd_nom existe déja" ) ;
                }
        // Pour insérer un CD, $data doit être nul
                else
                {
                // On créer la requete SQL et on l'envoie
   $sql = "INSERT INTO cd
    VALUES ('$cd_nom', '', '$cd_place_restante') ;" ;
 
                 // On envoie la requete
   $req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error()) ;
 
                 // On ferme la connexion à mysql
   mysql_close() ;
                 }


 
 
Ci quelqu'un pouvait m'éclairer... Marci d'avance  :spookie:


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR