par
Cyrano » 01 oct. 2005, 20:05
Mouais, il y a des erreurs dans les deux codes de toutes façon:
Premier code, une balise <tr> non fermée et des balises <form> et </form> au mauvais endroit => code invalide:
<?
//connexion à la base
$db = mysql_connect('localhost','root','') or die ('erreur de connexion');
//sélection de la base
mysql_select_db('test',$db);
//identifie les variables
$modif = $_POST["modif"];
$id = $_POST["id"];
$nom = $_POST["nom"];
$prenom = $_POST["prenom"];
$datenaiss = $_POST["datenaiss"];
$classe = $_POST["classe"];
//Selection à modifié
$sql = "SELECT * FROM `eleves` WHERE id= ".$modif;
$req = mysql_query($sql);
$pers = mysql_fetch_array($req)
?>
MODIFICATION
<form method="post" action="modif_validation.php">
<table border=0>
<tr>
<td>id :</td>
<td><textarea name="id" rows=1 cols=40><? echo $pers['id']; ?></textarea></td>
</tr>
<tr>
<td>Nom :</td>
<td><textarea name="nom" rows=1 cols=40><? echo $pers['nom']; ?></textarea></td>
</tr>
<tr>
<td>Prénom :</td>
<td><textarea name="prenom" rows=1 cols=40><? echo $pers['prenom']; ?></textarea></td>
</tr>
<tr>
<td height="41">Data de naissance :</td>
<td><textarea name="datenaiss" rows=1 cols=40><? echo $pers['datenaiss']; ?></textarea></td>
</tr>
<tr>
<td>Classe :</td>
<td><textarea name="classe" rows=1 cols=40><? echo $pers['classe']; ?></textarea></td>
</tr>
<tr>
<td colspan=2 align=center><input type="submit" name="submit" value="Envoyer"></td>
</tr>
</table>
</form>
Second code, essaye donc en faisant des concaténation propre et en enlevant les appostrophes autour de l'id de la clause WHERE, c'est un entier, or avecde apostrophes, il sera lu comme une chaine de caractères
<?
//connexion à la base
$db = mysql_connect('localhost','root','') or die ('erreur de connexion');
//sélection de la base
mysql_select_db('test',$db);
//identifie les variables
$id = $_POST["id"];
$nom = $_POST["nom"];
$prenom = $_POST["prenom"];
$datenaiss = $_POST["datenaiss"];
$classe = $_POST["classe"];
//envoie de la requête modification des données
$sql = "UPDATE eleves SET nom= '". $nom ."', prenom= '". $prenom ."', datenaiss = '". $datenaiss ."', classe='". $classe ."' 'nom= '". $nom ."' WHERE id=". $id;
if(mysql_query($sql))
{
//Récupèration des données
echo " $id modifié ";
}
//fermeture
mysql_close();
?>
Mouais, il y a des erreurs dans les deux codes de toutes façon:
Premier code, une balise <tr> non fermée et des balises <form> et </form> au mauvais endroit => code invalide:
[php]<?
//connexion à la base
$db = mysql_connect('localhost','root','') or die ('erreur de connexion');
//sélection de la base
mysql_select_db('test',$db);
//identifie les variables
$modif = $_POST["modif"];
$id = $_POST["id"];
$nom = $_POST["nom"];
$prenom = $_POST["prenom"];
$datenaiss = $_POST["datenaiss"];
$classe = $_POST["classe"];
//Selection à modifié
$sql = "SELECT * FROM `eleves` WHERE id= ".$modif;
$req = mysql_query($sql);
$pers = mysql_fetch_array($req)
?>
MODIFICATION
<form method="post" action="modif_validation.php">
<table border=0>
<tr>
<td>id :</td>
<td><textarea name="id" rows=1 cols=40><? echo $pers['id']; ?></textarea></td>
</tr>
<tr>
<td>Nom :</td>
<td><textarea name="nom" rows=1 cols=40><? echo $pers['nom']; ?></textarea></td>
</tr>
<tr>
<td>Prénom :</td>
<td><textarea name="prenom" rows=1 cols=40><? echo $pers['prenom']; ?></textarea></td>
</tr>
<tr>
<td height="41">Data de naissance :</td>
<td><textarea name="datenaiss" rows=1 cols=40><? echo $pers['datenaiss']; ?></textarea></td>
</tr>
<tr>
<td>Classe :</td>
<td><textarea name="classe" rows=1 cols=40><? echo $pers['classe']; ?></textarea></td>
</tr>
<tr>
<td colspan=2 align=center><input type="submit" name="submit" value="Envoyer"></td>
</tr>
</table>
</form>[/php]
Second code, essaye donc en faisant des concaténation propre et en enlevant les appostrophes autour de l'id de la clause WHERE, c'est un entier, or avecde apostrophes, il sera lu comme une chaine de caractères
[php]<?
//connexion à la base
$db = mysql_connect('localhost','root','') or die ('erreur de connexion');
//sélection de la base
mysql_select_db('test',$db);
//identifie les variables
$id = $_POST["id"];
$nom = $_POST["nom"];
$prenom = $_POST["prenom"];
$datenaiss = $_POST["datenaiss"];
$classe = $_POST["classe"];
//envoie de la requête modification des données
$sql = "UPDATE eleves SET nom= '". $nom ."', prenom= '". $prenom ."', datenaiss = '". $datenaiss ."', classe='". $classe ."' 'nom= '". $nom ."' WHERE id=". $id;
if(mysql_query($sql))
{
//Récupèration des données
echo " $id modifié ";
}
//fermeture
mysql_close();
?>[/php]