Problème d'ajout en php

gfcna -  
justoo76 Messages postés 186 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Voici l'erreur que ça m'affiche :

Warning: Variable passed to each() is not an array or object in C:\Users\Guillaume\Desktop\xampp\htdocs\adresse\ajout.php on line 16

Warning: mysql_close() expects parameter 1 to be resource, null given in C:\Users\Guillaume\Desktop\xampp\htdocs\adresse\ajout.php on line 51

et voici le code source :

<?php
include("config.inc.php");
?>
<html>
<title>Ajout d'un enregistrement</title>
<body>
<?php



/* _________________RECUP_DES_DONNEES____________________ */

while (list($var, $value) = each($HTTP_GET_VARS))
{
$tab_asso["$var"] = $value;
}



/* ____________________FORMULAIRE________________________ */

switch ($tab_asso[ok]) {

/* ____ENREGISTREMENT_____ */
case 1;
$requete=mysql_query("insert into carnet values('','$nom','$prenom','$adresse1','$adresse2','$cpostal','$ville','$tel','$fax','$email')");
echo "<p align=center><h1 align=center>Enregistrement réussi.<br><br><a href='carnet.php'>Retour</a></p>";
break;



/* ______AFFICHAGE DU FORMULAIRE____ */
default;
echo "<blockquote><table border=0><form method='get' action='ajout.php'><input type='hidden' name=ok value=1>
<td>Nom</td><td><input type='text' name=nom size=30 maxlenght=50></td>
<td align=right>Prénom</td><td><input type='text' name=prenom size=30 maxlenght=50></td><tr>
<td>Adresse</td><td><input type='text' name=adresse1 size=30 maxlenght=60></td>
<td align=right>Adresse (complément)</td><td><input type='text' name=adresse2 size=30 maxlenght=60></td><tr>
<td>Code postal</td><td><input type='text' name=cpostal size=30 maxlenght=5></td>
<td align=right>Ville</td><td><input type='text' name=ville size=30 maxlenght=30></td><tr>
<td>Téléphone</td><td><input type='text' name=tel size=30 maxlenght=15></td>
<td align=right>Fax</td><td><input type='text' name=fax size=30 maxlenght=15></td><tr>
<td>E-mail</td><td><input type='text' name=email size=30 maxlenght=30></td><tr>
</table></blockquote>";
echo "<table align=center><tr><td><input type='submit' value='Ajouter'></td><td><input type='reset' value='Tout effacer'></td></form><td><form method=get action='carnet.php'><input type=submit value='Annuler'></td></form></table>";
break;
}

MYSQL_CLOSE($db_link);
?>
</body>
</html>

j'ai besoin d'aide svp c'est important

Mercii

8 réponses

justoo76 Messages postés 186 Date d'inscription   Statut Membre Dernière intervention   13
 
Bonjour,

Je ne connait pas trop la fonction each() mais apparament, elle requiere un tableau ou objet en parametre.. A mon avis ya un changement de variables à faire.
0
gfcna
 
c'est à dire je débute en php donc c'est dure dure.
0
justoo76 Messages postés 186 Date d'inscription   Statut Membre Dernière intervention   13
 
Bah déja pour ton while , si tu veux comparer, faudrai remplacer sa :

while (list($var, $value) = each($HTTP_GET_VARS))

par sa :

while (list($var, $value) == each($HTTP_GET_VARS))


Sinon sa compare rien du tout !
0
justoo76 Messages postés 186 Date d'inscription   Statut Membre Dernière intervention   13
 
c quoi ta variable $http_get_vars ?
0
gfcna
 
voici l'erreur après le changement "=="

Parse error: syntax error, unexpected T_IS_EQUAL, expecting '=' in C:\Users\Guillaume\Desktop\xampp\htdocs\adresse\ajout.php on line 13
0

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

Posez votre question
gfcna
 
j'ai résolu le problème
avec each en remplaçant each($HTTP_GET_VARS)) par each($_POST))

il me reste cette erreur désormais :

Warning: mysql_close() expects parameter 1 to be resource, null given in C:\Users\Guillaume\Desktop\xampp\htdocs\adresse\ajout.php on line 48
0
justoo76 Messages postés 186 Date d'inscription   Statut Membre Dernière intervention   13
 
Tu l'a bien parametré ton $db_link ?
genre

$db_link = mysql_connect($myServer, $myUser, $myPass)
or die("Connexion impossible sur le serveur $myServer");
0
gfcna
 
effectivement ça venait de là problème résolu maintenant j'ai un autre problème dans la page carnet.php :

Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in C:\Users\Guillaume\Desktop\xampp\htdocs\adresse\carnet.php on line 17

/////////////


<?php
include("config.inc.php");
?>
<html>
<title>Carnet d'adresse</title>
<body bgcolor="#FFFFFF">
<h1 align=center>Carnet d'adresse</h1><br>

<?php




/*___________________AFFICHAGE_DES_ENREGISTREMENTS_____________________ */

$result = MYSQL_QUERY("select * from carnet order by nom");
$number = MYSQL_NUM_ROWS($result);
echo "<p align=center>$number enregistrements.</p><br>";
$i=0;
echo "<table border=1 align=center><tr><th>Nom</th><th>Prénom</th><th>Adresse</th><th>Code Postal</th><th>Ville</th><th>Téléphone</th><th>Fax</th><th>E-mail</th><th colspan=2>Opérations</th></tr>";

while ($i<$number) {
$id=mysql_result($result,$i,"id");
$nom=mysql_result($result,$i,"nom"); if ($nom=="") {$nom="-";}
$prenom=mysql_result($result,$i,"prenom"); if ($prenom=="") {$prenom="-";}
$adresse1=mysql_result($result,$i,"adresse1");
$adresse2=mysql_result($result,$i,"adresse2");if (($adresse2=="")&&($adresse1=="")) {$adresse1="-";}
$cpostal=mysql_result($result,$i,"cpostal");if ($cpostal=="") {$cpostal="-";}
$ville=mysql_result($result,$i,"ville");if ($ville=="") {$ville="-";}
$tel=mysql_result($result,$i,"tel");if ($tel=="") {$tel="-";}
$fax=mysql_result($result,$i,"fax");if ($fax=="") {$fax="-";}
$email=mysql_result($result,$i,"email");if ($email=="") {$email="-";}

echo "<tr><td align=center><b>$nom</b></td><td align=center>$prenom</td><td align=center>$adresse1";
echo "<br>$adresse2</td><td align=center>$cpostal</td><td align=center>$ville</td><td align=center>$tel</td><td align=center>$fax</td><td align=center>$email</td><td><a href='modif.php?id=$id'>Modifier</a></td><td><a href='effacer.php?eff=$id'>Effacer</a></td></tr>";
$i++;
}
echo "</table>";


/* _________________________MENU____________________________ */

echo "<br><br><br><a href='ajout.php'><p align=center>Ajouter un enregistrement</p></a>";


MYSQL_CLOSE();
?>

</body>
</html>
0
justoo76 Messages postés 186 Date d'inscription   Statut Membre Dernière intervention   13
 
Et bien la syntaxe a l'aire correct, c'est peut être dans la base de donnée qu'il y a un pb , sinon moi pour aficher le nre de ligne totale s'une table je fait :


$lignes=0;
$lignes=mysql_query("SELECT COUNT(*) as NBR FROM ta_table");
$row=mysql_fetch_object($lignes);
$total=$row->NBR;


echo $total.'enregistrement';
0