Modifier des données de base via un formulaire

Répondre
alis
le 14/05/2010 à 19:20
alis
salut tous le monde, je suis debutant en php et j'apprend par des tutoriel et des exemples le language php et je suis buter à un problême et je pense savoir ou se trouve le probleme.En effet ci vou regardez mon code, j'ai une erreur de type:
Notice: Undefined index: id in C:\Program Files\EasyPHP5.2.10\www\infos\modification2.php on line 15.
j'ai compris que le id n'es pa defini est-ce que quelqu'un pourrai m'aidez par rapport a tous sa? merci d'avance
<?php Votre code php ?>
<?php Votre code php ?>
<?php Votre code php ?>
<?php Votre code php ?>
dougsagga
alis
le 14/05/2010 à 19:22
alis
<html>
<head>
<title>modification de données en PHP :: partie2</title>
</head>
<body>
<?php
//connection au serveur:
$cnx = mysql_connect( "localhost", "root", "" ) ;

//sélection de la base de données:
$db = mysql_select_db( "INFOS" ) ;

//récupération de la variable d'URL,
//qui va nous permettre de savoir quel enregistrement modifier
$id= $_GET['id'] ;

//requête SQL:
$sql = "SELECT *
FROM personnes
WHERE id= '$id'" ;

//exécution de la requête:
$requete = mysql_query( $sql, $cnx ) ;

//affichage des données:
if( $result = mysql_fetch_object( $requete ) )
{
?>
<form name="insertion" action="modification3.php" method="POST">
<input type="hidden" name="id" value="<?php echo($id) ;?>">
<table border="0" align="center" cellspacing="2" cellpadding="2">
<tr align="center">
<td>nom</td>
<td><input type="text" name="nom" value="<?php echo($result->nom) ;?>"></td>
</tr>
<tr align="center">
<td>prenom</td>
<td><input type="text" name="prenom" value="<?php echo($result->prenom) ;?>"></td>
</tr>
<tr align="center">
<td>adresse</td>
<td><input type="text" name="adresse" value="<?php echo($result->adresse) ;?>"></td>
</tr>
<tr align="center">
<td>code postal</td>
<td><input type="text" name="codePostal" value="<?php echo($result->cp) ;?>"></td>
</tr>
<tr align="center">
<td>numéro de téléphone</td>
<td><input type="text" name="telephone" value="<?php echo($result->telephone) ;?>"></td>
</tr>
<tr align="center">
<td colspan="2"><input type="submit" value="modifier"></td>
</tr>
</table>
</form>
<?php
}//fin if
?>
</body>
</html>
dougsagga
LA GLOBULE
le 15/05/2010 à 10:28
LA GLOBULE
L'erreur dit que $_GET['id'] n'existe pas.
En fait, tu dois surement appeler ta page sans paramètre ?id= dans l'URL.

Il te faut donc tester si cette variable existe avant de l'utiliser, et tu peux le faire en utilisant la fonction isset.

Si le test de la variable avec cette fonction est invalide, tu as plusieurs solution :
- soit tu rediriges sur une autre page
- soit tu l'initialises avec une valeur par défaut
- soit tu fais ce que tu veux :)
Répondre

Ecrire un message

Votre message vient d'être créé avec succès.
LoadingChargement en cours