Php/sql probleme update
canardwifi
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonjour,
j ai cette requête qui me permet de modifier les champs de ma table mais l'update ne fonctionne pas je me tire les cheveux pour savoir pourquoi*
merci de votre aide
$sql = "SELECT dvd, zone, format FROM general order by dvd";
$req = mysql_query($sql) or die( mysql_error() ) ;
$total = mysql_num_rows($req);
{
echo '<form method ="post" action="test.php">';
echo '<table>'."\n";
echo '<tr>';
echo '<th ><b><u>DVD.</u></b></th>';
echo '<th ><b><u>ZONE</u></b></th>';
echo '<th><b><u>FORMAT</u></b></th>';
echo '</tr>'."\n";
while($row = mysql_fetch_array($req))
{
echo '<tr>';
echo '<td>'.$row["DVD"].'</td>';
echo '<td><input type="text" name="ZONE" value="'.$row["ZONE"].'"/></td>';
echo '<td><input type="text" name="format" value="'.$row["format"].'"/></td>';
echo '</tr>'."\n";
}
echo '</table>'."\n";
echo '<input type="hidden" name="dvd2" value='.$_POST['dvd'].' /><br><center><input type="submit" name="ok" value="Modifier"/></center>';
echo '</form>';
}
if (isset($_POST['riders2']))
{
$sql2= "UPDATE general SET zone='".$_POST['zone']."', format='".$_POST['format']."'
WHERE dvd='".$_POST['dvd2']."'";
$req2= mysql_query($sql2) or die('Erreur SQL !'.$sql2.'<br>'.mysql_error());
if(isset($req2))
{
echo "Modification OK" ;
}
}
?>
j ai cette requête qui me permet de modifier les champs de ma table mais l'update ne fonctionne pas je me tire les cheveux pour savoir pourquoi*
merci de votre aide
$sql = "SELECT dvd, zone, format FROM general order by dvd";
$req = mysql_query($sql) or die( mysql_error() ) ;
$total = mysql_num_rows($req);
{
echo '<form method ="post" action="test.php">';
echo '<table>'."\n";
echo '<tr>';
echo '<th ><b><u>DVD.</u></b></th>';
echo '<th ><b><u>ZONE</u></b></th>';
echo '<th><b><u>FORMAT</u></b></th>';
echo '</tr>'."\n";
while($row = mysql_fetch_array($req))
{
echo '<tr>';
echo '<td>'.$row["DVD"].'</td>';
echo '<td><input type="text" name="ZONE" value="'.$row["ZONE"].'"/></td>';
echo '<td><input type="text" name="format" value="'.$row["format"].'"/></td>';
echo '</tr>'."\n";
}
echo '</table>'."\n";
echo '<input type="hidden" name="dvd2" value='.$_POST['dvd'].' /><br><center><input type="submit" name="ok" value="Modifier"/></center>';
echo '</form>';
}
if (isset($_POST['riders2']))
{
$sql2= "UPDATE general SET zone='".$_POST['zone']."', format='".$_POST['format']."'
WHERE dvd='".$_POST['dvd2']."'";
$req2= mysql_query($sql2) or die('Erreur SQL !'.$sql2.'<br>'.mysql_error());
if(isset($req2))
{
echo "Modification OK" ;
}
}
?>
A voir également:
- Php/sql probleme update
- Windows update bloqué - Guide
- Winget update - Guide
- Asus live update - Télécharger - Utilitaires
- Easy php - Télécharger - Divers Web & Internet
- Wsus offline update - Télécharger - Systèmes d'exploitation
11 réponses
Bonjour,
Stocke les $_POST[] dans des variables avant de faire l'UPDATE, je pense que c'est les quote qu'il aime pas dans une chaîne de caractères.
Stocke les $_POST[] dans des variables avant de faire l'UPDATE, je pense que c'est les quote qu'il aime pas dans une chaîne de caractères.
Ya un espace en method et =
<form method ="post" action="test.php">';
en plus ton champ s'appelle ZONE et pas zone. Je sais pas si ça a quelque chose à voir avec le problème.
tu ecris : if (isset($_POST['riders2']))
il est ou ton input qui s'appelle riders2 , je l'ai pas trouvé.
<form method ="post" action="test.php">';
en plus ton champ s'appelle ZONE et pas zone. Je sais pas si ça a quelque chose à voir avec le problème.
tu ecris : if (isset($_POST['riders2']))
il est ou ton input qui s'appelle riders2 , je l'ai pas trouvé.
Non, pas besoin d'espace. Perso je fais toujours des form sans espace et ça fonctionne toujours. C'est les quotes dans la chaîne de caractères qui posent soucis, stocke les réponses du FORM dans des variables.
merci de votre aide
Voila ce que j ai fait ans succès
$zone=$_POST['zone'];
$format=$_POST['format'];
$dvd2=$_POST['dvd2'];
if (isset($_POST['ok']))
{
$sql2= "UPDATE general SET zone='".$zone."', format='".$format."' WHERE dvd='".$dvd2."'";
$req2= mysql_query($sql2) or die('Erreur SQL !'.$sql2.'<br>'.mysql_error());
if(isset($req2))
{
echo "Modification OK" ;
}
}
?>
Voila ce que j ai fait ans succès
$zone=$_POST['zone'];
$format=$_POST['format'];
$dvd2=$_POST['dvd2'];
if (isset($_POST['ok']))
{
$sql2= "UPDATE general SET zone='".$zone."', format='".$format."' WHERE dvd='".$dvd2."'";
$req2= mysql_query($sql2) or die('Erreur SQL !'.$sql2.'<br>'.mysql_error());
if(isset($req2))
{
echo "Modification OK" ;
}
}
?>
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Oups autant pour moi... De toute façon qu'il y en ai un ou pas ça ne change rien.
Pour le reste en effet, ça pose problème (surtout le riders2)...
Pour le reste en effet, ça pose problème (surtout le riders2)...
oups je me suis trompé c était pas if (isset($_POST['riders2'])) mais bien if (isset($_POST['ok'])) je ne comprends vraiment pas
peut etre cela pourra vous aider j ai fait un echo devant $sql2 voila le resultat quand je clique sur modifier je voulais changer seulement le champ format
UPDATE general SET zone='', format='4' WHERE dvd='/'Modification OK
UPDATE general SET zone='', format='4' WHERE dvd='/'Modification OK
Je viens de penser à un truc qui m'est arrivé avec une base de données. Je ne parvenais ni à insérer, ni à modifier si ce que je voulais entrer dans ma base contenait certains caractères... je ne sais plus lesquels cependant... c'est peut-être ça ton problème.
Sinon, le mysql_error il ne détecte rien ?
Sinon, le mysql_error il ne détecte rien ?