Problème de la syntaxe each dans mon code php
gmartine
Messages postés
3
Date d'inscription
Statut
Membre
Dernière intervention
-
le père -
le père -
Bonjour,
voici mon code
<?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>
et voici l'insulte qu'il me répond^^
Warning: Variable passed to each() is not an array or object in C:\Users\Guillaume\Desktop\xampp\htdocs\adresse\ajout.php on line 16
avez vous une solution
est-ce à cause de la version de php entre php4 et php5?
merci de m'aider c'est important
voici mon code
<?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>
et voici l'insulte qu'il me répond^^
Warning: Variable passed to each() is not an array or object in C:\Users\Guillaume\Desktop\xampp\htdocs\adresse\ajout.php on line 16
avez vous une solution
est-ce à cause de la version de php entre php4 et php5?
merci de m'aider c'est important
A voir également:
- Problème de la syntaxe each dans mon code php
- Code ascii - Guide
- Code de déverrouillage oublié - Guide
- Code puk bloqué - Guide
- Code activation windows 10 - Guide
- Code blocks - Télécharger - Langages
1 réponse
Bonjour
Oui, c'est probablement ça la raison. En PHP5, si la variable de configuration register_long_arrays est à false, les tableaux comme $HTTP_GET_VARS n'existent pas.
Il suffit d'utiliser $_GET à la place.
Remarques au passage :
Ne pas oublier les balises <head> et </head> autour de l'en-tête HTML
Cette méthode de récupération des variables est pour le moins bizarre ; à moins que tu n'aies déjà initialisé certains éléments de $tab_asso quelque part, elle revient à faire $tab_asso = $_GET; on ne voit pas très bien l'intérêt
Oui, c'est probablement ça la raison. En PHP5, si la variable de configuration register_long_arrays est à false, les tableaux comme $HTTP_GET_VARS n'existent pas.
Il suffit d'utiliser $_GET à la place.
Remarques au passage :
Ne pas oublier les balises <head> et </head> autour de l'en-tête HTML
Cette méthode de récupération des variables est pour le moins bizarre ; à moins que tu n'aies déjà initialisé certains éléments de $tab_asso quelque part, elle revient à faire $tab_asso = $_GET; on ne voit pas très bien l'intérêt