Eléphanteau du PHP |
36 Messages
07 janv. 2013, 15:27
Merci Moogli pour ta réponse...
... mais maleuresement c est du chinois pour moi.
Deja que je galère avec php et mysql et tu me dis qu il faut que je change pour mysqli. Je réalise simplement un acces au commande (client) afin d'ajouter une information (n° de plaque) a la fin de la production.
J ai trouvé ces 3 scripts que j ai adapté et ils fonctionnent :
modification1.php
<?php
//connection au serveur:
$cnx = mysql_connect( "127.0.0.1", "root", "" ) ;
//sélection de la base de données:
$db = mysql_select_db( "verre" ) ;
//requête SQL:
$sql = "SELECT *
FROM imports
ORDER BY no_commande" ;
//exécution de la requête:
$requete = mysql_query( $sql, $cnx ) ;
mysql_real_escape_string($no_commande);
//affichage des données:
while( $result = mysql_fetch_object( $requete ) )
{
echo(
"<div align=\"center\">"
.$result->no_commande." ".$result->code_client." ".$result->largeur." x ".$result->hauteur
." <a href=\"modification2.php?idimports=".$result->id."\">modifier</a></div>\n"
) ;
}
?>
modification2.php
<?php
//connection au serveur:
$cnx = mysql_connect( "127.0.0.1", "root", "" ) ;
//sélection de la base de données:
$db = mysql_select_db( "verre" ) ;
//récupération de la variable d'URL,
//qui va nous permettre de savoir quel enregistrement modifier
$id = $_GET["idimports"] ;
//requête SQL:
$sql = "SELECT *
FROM imports
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>no plaque</td>
<td><input type="text" name="no_plaque" value="<?php echo($result->no_plaque) ;?>"></td>
</tr>
<tr align="center">
<td colspan="2"><input type="submit" value="modifier"></td>
</tr>
</table>
</form>
<?php
}//fin if
?>
modification3.php
<?php
//connection au serveur
$cnx = mysql_connect( "127.0.0.1", "root", "" ) ;
//sélection de la base de données:
$db = mysql_select_db( "verre" ) ;
//prenom:
$no_plaque = $_POST["no_plaque"] ;
//récupération de l'identifiant de la personne:
$id = $_POST["id"] ;
//création de la requête SQL:
$sql = "UPDATE imports
SET no_plaque = '$no_plaque'
WHERE id = '$id' " ;
//exécution de la requête SQL:
$requete = mysql_query($sql, $cnx) or die( mysql_error() ) ;
//affichage des résultats, pour savoir si la modification a marchée:
if($requete)
{
echo("La modification à été correctement effectuée") ;
}
else
{
echo("La modification à échouée") ;
}
?>
mais dans modification1.php tout la base s affiche alors que je voudrais pouvoir selectionner 1 seul n°de commande (qui peux avoir 1,2,3 voir plus d'entrer dans la bd "imports".
Est ce que c est clair ???
Peux tu me dire pourquoi rien ne s affiche avec mon formualire ?
Modifié en dernier par
coqenpatte le 07 janv. 2013, 18:42, modifié 1 fois.