Problème requete mysql

Résolu
clemh78 Messages postés 65 Statut Membre -  
clemh78 Messages postés 65 Statut Membre -
Bonjour,
Je vais vous expliquer mon problème.
J'ai un formulaire avec le nombre de champ qu'on le souhaite mais le problème et plutôt du coter requête mysql.
J'ai cette requête:
$var = 1;
while( $var <= $num_profils){
	
		$profil= $centre_lieux_$var ;
	
 mysql_query("INSERT INTO Profils (NumProfil, Code , Affectation) VALUES ('', '$num_concours' , '$profil')");
 
 	$var ++;
}

Le problème c'est que je voudrais que cette requête ajoute à Affectation cette variable "$centre_lieux_1","$centre_lieux_2", C'est une boucle , mais le problème c'est que il insert les mots au lieux de la variable donc je me retrouve dans ma base avec "$centre_lieux_1" au lieux de sa valeur.
Si vous avez une solution ?
Merci,
Configuration: Windows XP
Firefox 3.0.4

9 réponses

  1. C45T0R
     
    Faut que t'enlèves les quotes :

    $var = 1;
    while( $var <= $num_profils){

    $profil= $centre_lieux_$var ;

    mysql_query("INSERT INTO Profils (NumProfil, Code , Affectation) VALUES ('', $num_concours , $profil)");

    $var ++;
    }
    0
  2. toto
     
    Bonjour

    C45T0R -> évite ce genre de conseil, c'est complètement faux.
    clemh78 -> $profil= ${centre_lieux_$var} devrait beaucoup mieux marcher
    0
  3. clemh78 Messages postés 65 Statut Membre
     
    Ça ne marche toujours pas car si tu veux mon formulaire il a plusieurs champs incrémente donc il s'appelle "$centre_lieux_1","$centre_lieux_2" et moi je veux pour les récupérer mais le problème c'est que comme il y a autan de champs que l'on veux il faut que dans mon script mysql , il prenne c'est valeur la $centre_lieux_1,$centre_lieux_2 mais comment mettre changer 1 , 2 , 3,... La est mon problème !
    Je m'exprime peut être mal.
    Merci comme même de ta réponse.
    0
  4. clemh78 Messages postés 65 Statut Membre
     
    Avec ton script j'ai une erreur pourtant tout est bon en principe "syntax error, unexpected T_VARIABLE".
    Et voila mon script:
    $var = 1;
    while( $var <= $num_profils){
    
    $profil = ${centre_lieux_$var};
    
    mysql_query("INSERT INTO Profils (NumProfil, Code , Affectation) VALUES ('', '$num_concours' , '$profil')");
    
    $var ++;
    }
    
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. toto
     
    Je ne comprends plus : tu parles d'abord de variables différentes $centre_lieux_1, $centre_lieux_2 etc à mettre dans un même champ Affectation, maintenant tu veux les mettre dans des champs différents ? comment s'appellent ces champs ?
    0
  7. toto
     
    oublie le message 5, il s'est croisé avec le tien
    0
  8. clemh78 Messages postés 65 Statut Membre
     
    Si tu veux j'ai un formulaire avec le nombre de champs (input) demandé après je passe à mon script php mysql pour envoyer dans une table tout c'est champs (input)

    $num_profils est fait avant et représente le nombre de champ que l'utilisateur veux.
    <form action="add_concours_profils_conf.php" method="post">
    <?php
    $var = 1;
    while( $var <= $num_profils){
    ?>
    Profil n°<?php echo $var;?>: <input type="text" name="num_profil_<?php echo $var;?>"/><br /><br />
    <?php
    	$var ++;
    }
    ?>
    	<br />
    	Nombres de lieux d'ecrit: <input type="text" name="centre_ecrit"/><br />
    	<font color="red"><strong><big>Attention:</big></strong> Centre organisateur COMPRIS !</font><br /><br />
    		<input type="hidden" name="num_concours" value="<?php echo $num_concours; ?>" />	
    		<input type="hidden" name="num_profils" value="<?php echo $num_profils; ?>" />
    	<input type="submit" value="Envoyer" />
    </form>
    

    Puis je passe a mon script msql:
    $var = 1;
    while( $var <= $num_profils){
    
    $profil = ${centre_lieux_$var};
    
    mysql_query("INSERT INTO Profils (NumProfil, Code , Affectation) VALUES ('', '$num_concours' , '$profil')");
    
    $var ++;
    }
    


    Et enfait si il y a deux champs la requete sera faites deux fois mais moi faut que je récupère les valeur du champ 1 et du champs 2 (s'il y a 2 champ demandé par l'utilisateur)
    0
  9. toto
     
    pardon
    $profil = ${'centre_lieux_'.$var};
    0
  10. clemh78 Messages postés 65 Statut Membre
     
    Merci beaucoup ça marche !
    0