[PHP]Requete mysql

Résolu/Fermé
alucard67 Messages postés 37 Date d'inscription mercredi 2 mai 2007 Statut Membre Dernière intervention 1 juin 2007 - 3 mai 2007 à 11:30
 issam - 4 mai 2007 à 13:49
bonjour, j'ai un souci au niveau de la partie des requetes mysql de mon script.
j'ai chercher dans pas mal de site, jai essayer beaucoup d'exemple, mais rien ne fonctionne, et j'ai finalement décidé d'essayer ici.

alors deja jai des erreur de ce type:

Notice: Undefined variable: marque in C:\Program Files\EasyPHP 2.0b1\www\ajout3.php on line 34

Notice: Undefined variable: designation in C:\Program Files\EasyPHP 2.0b1\www\ajout3.php on line 34

Notice: Undefined variable: type in C:\Program Files\EasyPHP 2.0b1\www\ajout3.php on line 34

Notice: Undefined variable: ref in C:\Program Files\EasyPHP 2.0b1\www\ajout3.php on line 34



et la ligne concerné est la suivante
mysql_query("INSERT INTO equipements VALUES (`` , '.$marque.','.$designation.','.$type.','.$reference.')"); 


merci pour les aides ...



A voir également:

8 réponses

Essai sa :

mysql_query("INSERT INTO equipements VALUES (`` , '$marque','$designation','$type','$reference')");
0
Blue Boy Maxime Messages postés 65 Date d'inscription jeudi 18 décembre 2003 Statut Membre Dernière intervention 8 juillet 2008 18
3 mai 2007 à 11:46
Salut,

Sans ton code, il est difficile de t'aider.

As tu défini les variables $marque, $designation, $type et $reference ?

Cela vient peut etre de là.

Fait un echo de cette ligne :

"INSERT INTO equipements VALUES (`` , '.$marque.','.$designation.','.$type.','.$reference.')"

avant de lancer une commande mysql. Ainsi tu verras si tes champs sont vides ou non.


Je viens de remarquer la construction de ta requete. Ecris plutot ceci:

"INSERT INTO equipements VALUES (`` ,$marque,$designation,$type,$reference);"

Ce qui est entre les double-quotes va être interprété, donc tu auras une bonne prévisualisation de ta requete.


Bonne réception.
0
alucard67 Messages postés 37 Date d'inscription mercredi 2 mai 2007 Statut Membre Dernière intervention 1 juin 2007 3
3 mai 2007 à 11:55
Tomrage j'ai essayé ta proposition mais le message que je reçoit est identique.


et pour répondre a Blu Boy Maxime jai fait un echo et voila ce que j'obtiens:

Notice: Undefined variable: marque in C:\Program Files\EasyPHP 2.0b1\www\ajout3.php on line 34

Notice: Undefined variable: designation in C:\Program Files\EasyPHP 2.0b1\www\ajout3.php on line 34

Notice: Undefined variable: type in C:\Program Files\EasyPHP 2.0b1\www\ajout3.php on line 34

Notice: Undefined variable: reference in C:\Program Files\EasyPHP 2.0b1\www\ajout3.php on line 34
INSERT INTO equipements VALUES (`` , '','','','') 




pour info juste au dessus de cette reponse jai fai des echo de toutes les variables que j'ai pour voir si je recuperai bien les informations entrées et elles sont bien là. Mais la réponse que j'ai recu apres tes conseils m'étonne un peu ...
bref je pige pas trop pourquoi ya pas les informations que j'ai rentré.


et MERCI a tout les deux pour vos réponses .
0
kij_82 Messages postés 4089 Date d'inscription jeudi 7 avril 2005 Statut Contributeur Dernière intervention 30 septembre 2013 857
3 mai 2007 à 12:23
Alucard, je t'ai déjà fait la remarque dans un autre de tes posts :)

Le probleme vient du fait que tu ne déclare pas des champs INPUT à l'intérieur de tes balises <form> et </form> dans la page de ton formulaire. Du coup lorsque tu soumet le formulaire, aucun des champs est envoyé, ce qui conduit aux messages d'erreurs que tu as.

Pense donc à modifier ton formulaire et redis nous ce qu'il en est.
0
alucard67 Messages postés 37 Date d'inscription mercredi 2 mai 2007 Statut Membre Dernière intervention 1 juin 2007 3
3 mai 2007 à 14:13
Ahhhhh mais cette fois j'ai bien fait attention, les balise form sont en place kij_82. ;)

et quand a Tomrage , je vais voir le lien merci .
J'esper que ça m'aidera

en tout cas merci les gars...

Je vous tiens au courant.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
alucard67 Messages postés 37 Date d'inscription mercredi 2 mai 2007 Statut Membre Dernière intervention 1 juin 2007 3
3 mai 2007 à 14:32
Bon ton exemple est tres bien expliquer mais y'a les même erreurs.
c'est a dire çà :


La marque de l'équipement est:   Cisco
la désignation de l'équipement est:   3750
le type de l'équipement est:   routeur
la référence de l'équipement est:   C3750-I5-M

Notice: Undefined variable: marque in C:\Program Files\EasyPHP 2.0b1\www\ajout3.php on line 53

Notice: Undefined variable: designation in C:\Program Files\EasyPHP 2.0b1\www\ajout3.php on line 53

Notice: Undefined variable: type in C:\Program Files\EasyPHP 2.0b1\www\ajout3.php on line 53

Notice: Undefined variable: reference in C:\Program Files\EasyPHP 2.0b1\www\ajout3.php on line 53
Vos infos on été ajoutées. 





alors le script de mon formulaire c'est celui là :


<form method="post" action="ajout3.php" >

<CENTER>Entrer la marque de l'équipement :<input type="text" name="marque">   Exemple: Cisco, Motorola...</CENTER>
</br>
<CENTER>Entrer la désignation de l'équipement:<input type="text" name="designation">   Exemple: BSR64000(pour Motorola),3750(pour Cisco)...</CENTER>
</br>
<CENTER>Choisir le type d'équipement:<input type="text" name="type">   Exemple: Routeur, Switch...</CENTER>
<br/>
<CENTER>Entrer la référence:<input type="text" name="reference">   Exemple:C3750-I5-M... </CENTER>
<br/>

<br/>



<input type="Submit" value="Ajouter à la base">
</form>



et pour finir les ajout dans ma base se font à partir ce ce script là (enfin il devrait se faire à partir de là)


<?php
if (isset($_POST['marque']) AND isset ($_POST['designation'])  AND isset ($_POST['type'])  AND isset ($_POST['reference']))
{
if ($_POST['marque']!=NULL AND $_POST['designation']!=NULL AND $_POST['type']!=NULL AND $_POST['reference']!=NULL)
{
?>
La marque de l'équipement est: &nbsp <?php echo $_POST['marque'];?></br>
la désignation de l'équipement est: &nbsp <?php echo $_POST['designation'];?></br>
le type de l'équipement est: &nbsp <?php echo $_POST['type'];?></br>
la référence de l'équipement est: &nbsp <?php echo $_POST['reference'];?></br>



<?php

$db = mysql_connect('localhost', 'root', '')  or die('Erreur de connexion '.mysql_error());
// sélection de la base  

    mysql_select_db('projet',$db)  or die('Erreur de selection '.mysql_error()); 
     
    // on écrit la requête sql 
    $sql = "INSERT INTO equipements(ID, marque, designation, type, reference) VALUES('','$marque','$designation','$type','$reference')"; 
     
    // on insère les informations du formulaire dans la table 
    mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error()); 

    // on affiche le résultat pour le visiteur 
    echo 'Vos infos on été ajoutées.'; 

    mysql_close();  // on ferme la connexion 
    } 

}

?>







voila je met tout comme ça ça sera polus facile, et merci à vous!!
0
kij_82 Messages postés 4089 Date d'inscription jeudi 7 avril 2005 Statut Contributeur Dernière intervention 30 septembre 2013 857
3 mai 2007 à 15:46
lol

C'est normal qu'il ne trouve pas les variables que tu lui passe dans ta requete puisqu'en effet elles n'existent pas :)

En entrée du script tu test bien si $_POST["..."] n'est pas vide / nulle, mais tu ne renseigne pas les variables derrière, ce qui fait que le moteur php ne les trouvent pas (ce n'est pas comme en javascript ou dans le même cas il te les mettrais à vide automatiquement par exemple).

Il faut donc faire ceci :

<?php
if (isset($_POST['marque']) AND isset ($_POST['designation'])  AND isset ($_POST['type'])  AND isset ($_POST['reference']))
{
if ($_POST['marque']!=NULL AND $_POST['designation']!=NULL AND $_POST['type']!=NULL AND $_POST['reference']!=NULL)
{

   $marque = $_POST['marque'];
   ...
?>



Avant de te lancer dans des codes je te conseil de voir des cours de PHP car les questions que tu poses sont de l'ordre du "basic" à savoir pour pouvoir coder correctement :)
Des tutos sur google tu en trouvera à foison si tu le souhaite, ou même sur ce forum ci d'ailleurs.

0
alucard67 Messages postés 37 Date d'inscription mercredi 2 mai 2007 Statut Membre Dernière intervention 1 juin 2007 3
3 mai 2007 à 16:03
ecoute jai passer 2 jour a lire non stop des cours sur le net, ca fait exactement 2 semaines que je programme.
les ligne que je doit rajouter, je pensai que ça se faisait tt seul
mais bon les cours sur lesquels jai pu m'inspirer j'ai pa vu que falai faire ça.
mais merci pour le coup de pouce.

ca avance lentement mais surement.
quand à ce genre d'erreur t'en fait pas t'en vera plus, :p
0
salut;
voici un site dont vous pouvez trouver des solution a vos probleme:
http://www.epage.fr/solutionsurnet/
merci
0