Modifier des données mysql via php
Fitz Chivalry
Messages postés
38
Date d'inscription
Statut
Membre
Dernière intervention
-
ima -
ima -
Bonjour à tous,
je me lance dans le php/mySQL à l'aide de tuto ici et là,
je voudrais modifier les données de ma base en suivant ce tuto :http://wiki.mediabox.fr/tutoriaux/php/inserer-modifier-supprimer-des-donne-php
la première page de modification marche nickel, mais lors de la deuxième j'ai ce message d'erreur :
"Warning: mysql_fetch_object(): supplied argument is not a valid MySQL result resource in c:\program files\easyphp1-8\www\standing_issues\admin\modify_data_two.php on line 24"
voici le code de la ligne 24 :
if( $result = mysql_fetch_object( $requete ) )
et voici le code de ma page :
<html>
<head>
<title>Modify Data - Page 2</title>
</head>
<body>
<?php
//connection to server:
$cnx = mysql_connect( "localhost", "root", "" ) ;
//select data base
$db = mysql_select_db( "bombardier" ) ;
//récupération de la variable d'URL,
//qui va nous permettre de savoir quel enregistrement modifier
$id = $_GET["idissue"] ;
//requête SQL:
$sql = "SELECT * FROM standing_issue WHERE issue = ".$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="modify_data_three.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>Issue</td>
<td><input type="text" name="issue" value="<?php echo $result->issue ;?>"></td>
</tr>
<tr align="center">
<td>Lead Depot</td>
<td><input type="text" name="lead_depot" value="<?php echo $result->lead_depot ;?>"></td>
</tr>
<tr align="center">
<td>Lead Derby</td>
<td><input type="text" name="lead_derby" value="<?php echo $result->lead_derby ;?>"></td>
</tr>
<tr align="center">
<td>Status</td>
<td><input type="text" name="status" value="<?php echo $result->status ;?>"></td>
</tr>
<tr align="center">
<td>Action Deadline</td>
<td><input type="text" name="action_deadline" value="<?php echo $result->action_deadline ;?>"></td>
</tr>
<tr align="center">
<td>Last Update</td>
<td><input type="text" name="last_update" value="<?php echo$result->last_update ;?>"></td>
</tr>
<tr align="center">
<td colspan="2"><input type="submit" value="modifier"></td>
</tr>
</table>
</form>
<?php
}//fin if
?>
</body>
</html>
voilà, je ne vois pas où est l'erreur. si quelqu'un qui s'y connait pouvait m'aider ça serait super sympa.
Merci d'avance à tous qui pourront m'aider.
je me lance dans le php/mySQL à l'aide de tuto ici et là,
je voudrais modifier les données de ma base en suivant ce tuto :http://wiki.mediabox.fr/tutoriaux/php/inserer-modifier-supprimer-des-donne-php
la première page de modification marche nickel, mais lors de la deuxième j'ai ce message d'erreur :
"Warning: mysql_fetch_object(): supplied argument is not a valid MySQL result resource in c:\program files\easyphp1-8\www\standing_issues\admin\modify_data_two.php on line 24"
voici le code de la ligne 24 :
if( $result = mysql_fetch_object( $requete ) )
et voici le code de ma page :
<html>
<head>
<title>Modify Data - Page 2</title>
</head>
<body>
<?php
//connection to server:
$cnx = mysql_connect( "localhost", "root", "" ) ;
//select data base
$db = mysql_select_db( "bombardier" ) ;
//récupération de la variable d'URL,
//qui va nous permettre de savoir quel enregistrement modifier
$id = $_GET["idissue"] ;
//requête SQL:
$sql = "SELECT * FROM standing_issue WHERE issue = ".$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="modify_data_three.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>Issue</td>
<td><input type="text" name="issue" value="<?php echo $result->issue ;?>"></td>
</tr>
<tr align="center">
<td>Lead Depot</td>
<td><input type="text" name="lead_depot" value="<?php echo $result->lead_depot ;?>"></td>
</tr>
<tr align="center">
<td>Lead Derby</td>
<td><input type="text" name="lead_derby" value="<?php echo $result->lead_derby ;?>"></td>
</tr>
<tr align="center">
<td>Status</td>
<td><input type="text" name="status" value="<?php echo $result->status ;?>"></td>
</tr>
<tr align="center">
<td>Action Deadline</td>
<td><input type="text" name="action_deadline" value="<?php echo $result->action_deadline ;?>"></td>
</tr>
<tr align="center">
<td>Last Update</td>
<td><input type="text" name="last_update" value="<?php echo$result->last_update ;?>"></td>
</tr>
<tr align="center">
<td colspan="2"><input type="submit" value="modifier"></td>
</tr>
</table>
</form>
<?php
}//fin if
?>
</body>
</html>
voilà, je ne vois pas où est l'erreur. si quelqu'un qui s'y connait pouvait m'aider ça serait super sympa.
Merci d'avance à tous qui pourront m'aider.
A voir également:
- Modifier php mysql
- Modifier dns - Guide
- Modifier liste déroulante excel - Guide
- Modifier story facebook - Guide
- Modifier extension fichier - Guide
- Modifier annonce le bon coin sans payer ✓ - Forum Services en ligne
50 réponses
Voici, le code, j'ai bien vérifier les noms des champs sont bien les mêmes que ceux de la base.
<?php
if(isset($_GET['idissue'])){
//On a demandé la modification
?>
<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( "bombardier" ) ;
//récupération de la variable d'URL,
//qui va nous permettre de savoir quel enregistrement modifier
$id = $_GET["idissue"] ;
//requête SQL:
$sql = "SELECT * FROM standing_issues WHERE issue = ' ".$id." ' " ;
//exécution de la requête:
$requete = mysql_query( $sql ) or die($sql . mysql_error());
//affichage des données:
while( $result = mysql_fetch_object( $requete ) )
{
?>
<form name="insert_modify_data" action="modif_data.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>Issue</td>
<td><input type="text" name="`issue`" value="<?php echo $result->issue ;?>"></td>
</tr>
<tr align="center">
<td>Lead Depot</td>
<td><input type="text" name="`lead_depot`" value="<?php echo $result->lead_depot ;?>"></td>
</tr>
<tr align="center">
<td>Lead Derby</td>
<td><input type="text" name="`lead_derby`" value="<?php echo $result->lead_derby ;?>"></td>
</tr>
<tr align="center">
<td>Status</td>
<td><input type="text" name="`status`" value="<?php echo $result->status ;?>"></td>
</tr>
<tr align="center">
<td>Action Deadline</td>
<td><input type="text" name="`action_deadline`" value="<?php echo $result->action_deadline ;?>"></td>
</tr>
<tr align="center">
<td>Last Update</td>
<td><input type="text" name="`last_update`" value="<?php echo $result->last_update ;?>"></td>
</tr>
<tr align="center">
<td colspan="2"><input type="submit" value="modifier"></td>
</tr>
</table>
</form>
<?php
}//fin while
?>
</body>
</html>
<?php
mysql_close();
}else if(isset($_POST['id'])){
//On a rempli le formulaire
//connection au serveur
$cnx = mysql_connect( "localhost", "root", "" ) ;
//sélection de la base de données:
$db = mysql_select_db( "bombardier" ) ;
//récupération des valeurs des champs:
$issue = $_POST["issue"] ;
$lead_depot = $_POST["lead_depot"] ;
$lead_derby = $_POST["lead_derby"] ;
$status = $_POST["status"] ;
$action_deadline = $_POST["action_deadline"] ;
$last_update = $_POST["last_update"] ;
//récupération de l'identifiant de la personne:
$id = $_POST["id"] ;
//création de la requête SQL:
$sql = "UPDATE standing_issues
SET (issue = ' ".$issue." ',
lead_depot = ' ".$lead_depot." ',
lead_derby = ' ".$lead_derby." ',
status = ' ".$status." ',
action_deadline = ' ".$action_deadline." '
last_update = ' ".$last_update." '
WHERE issue = ' ".$issue." ' ") ;
//exécution de la requête SQL:
$requete = mysql_query($sql ) or die( mysql_error() ) ;
//affichage des résultats, pour savoir si la modification a marchée:
if($requete)
{
echo("Modifications have been taken into account") ;
}
mysql_close();
else
{
echo("La modification à échouée") ;
}
mysql_close();
} else{
//On n'a rien demandé, on affiche les enregistrements
?>
<html>
<head>
<title>Modify Data - Page 1</title>
</head>
<body>
<?php
//connection au serveur:
$cnx = mysql_connect( "localhost", "root", "" ) ;
//sélection de la base de données:
$db = mysql_select_db( "bombardier" ) ;
//requête SQL:
$sql = "SELECT * FROM standing_issues ORDER BY issue" ;
//exécution de la requête:
$requete = mysql_query( $sql ) ;
//affichage des données:
while( $result = mysql_fetch_object( $requete ) )
{
echo "<div align=\"center\">".$result->issue." ".$result->lead_depot." ".$result->lead_derby." ".$result->status." ".$result->action_deadline." ".$result->last_update."
<a href=\"modif_data.php?idissue=".$result->issue."\">modify</a><br>\n" ;
}
?>
</body>
</html>
<?php
}//fin du if() global
?>
<?php
if(isset($_GET['idissue'])){
//On a demandé la modification
?>
<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( "bombardier" ) ;
//récupération de la variable d'URL,
//qui va nous permettre de savoir quel enregistrement modifier
$id = $_GET["idissue"] ;
//requête SQL:
$sql = "SELECT * FROM standing_issues WHERE issue = ' ".$id." ' " ;
//exécution de la requête:
$requete = mysql_query( $sql ) or die($sql . mysql_error());
//affichage des données:
while( $result = mysql_fetch_object( $requete ) )
{
?>
<form name="insert_modify_data" action="modif_data.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>Issue</td>
<td><input type="text" name="`issue`" value="<?php echo $result->issue ;?>"></td>
</tr>
<tr align="center">
<td>Lead Depot</td>
<td><input type="text" name="`lead_depot`" value="<?php echo $result->lead_depot ;?>"></td>
</tr>
<tr align="center">
<td>Lead Derby</td>
<td><input type="text" name="`lead_derby`" value="<?php echo $result->lead_derby ;?>"></td>
</tr>
<tr align="center">
<td>Status</td>
<td><input type="text" name="`status`" value="<?php echo $result->status ;?>"></td>
</tr>
<tr align="center">
<td>Action Deadline</td>
<td><input type="text" name="`action_deadline`" value="<?php echo $result->action_deadline ;?>"></td>
</tr>
<tr align="center">
<td>Last Update</td>
<td><input type="text" name="`last_update`" value="<?php echo $result->last_update ;?>"></td>
</tr>
<tr align="center">
<td colspan="2"><input type="submit" value="modifier"></td>
</tr>
</table>
</form>
<?php
}//fin while
?>
</body>
</html>
<?php
mysql_close();
}else if(isset($_POST['id'])){
//On a rempli le formulaire
//connection au serveur
$cnx = mysql_connect( "localhost", "root", "" ) ;
//sélection de la base de données:
$db = mysql_select_db( "bombardier" ) ;
//récupération des valeurs des champs:
$issue = $_POST["issue"] ;
$lead_depot = $_POST["lead_depot"] ;
$lead_derby = $_POST["lead_derby"] ;
$status = $_POST["status"] ;
$action_deadline = $_POST["action_deadline"] ;
$last_update = $_POST["last_update"] ;
//récupération de l'identifiant de la personne:
$id = $_POST["id"] ;
//création de la requête SQL:
$sql = "UPDATE standing_issues
SET (issue = ' ".$issue." ',
lead_depot = ' ".$lead_depot." ',
lead_derby = ' ".$lead_derby." ',
status = ' ".$status." ',
action_deadline = ' ".$action_deadline." '
last_update = ' ".$last_update." '
WHERE issue = ' ".$issue." ' ") ;
//exécution de la requête SQL:
$requete = mysql_query($sql ) or die( mysql_error() ) ;
//affichage des résultats, pour savoir si la modification a marchée:
if($requete)
{
echo("Modifications have been taken into account") ;
}
mysql_close();
else
{
echo("La modification à échouée") ;
}
mysql_close();
} else{
//On n'a rien demandé, on affiche les enregistrements
?>
<html>
<head>
<title>Modify Data - Page 1</title>
</head>
<body>
<?php
//connection au serveur:
$cnx = mysql_connect( "localhost", "root", "" ) ;
//sélection de la base de données:
$db = mysql_select_db( "bombardier" ) ;
//requête SQL:
$sql = "SELECT * FROM standing_issues ORDER BY issue" ;
//exécution de la requête:
$requete = mysql_query( $sql ) ;
//affichage des données:
while( $result = mysql_fetch_object( $requete ) )
{
echo "<div align=\"center\">".$result->issue." ".$result->lead_depot." ".$result->lead_derby." ".$result->status." ".$result->action_deadline." ".$result->last_update."
<a href=\"modif_data.php?idissue=".$result->issue."\">modify</a><br>\n" ;
}
?>
</body>
</html>
<?php
}//fin du if() global
?>
Dans ton formulaire seulement je ne crois pas qu'il faille aussi mettre les `` pour les champs, c'est qu'en sql.
Non, ça ne change pas.
Bon tant pis, en plus je viens d'apprendre qu'un collègue à fais tout ça sur une bdd access mise dans un répertoire partagé en réseau local. Donc mon projet ne sert plus rien (un peu dég' !)
Bon c'est pas grave, demain je finis mon stage et je rentre en France.
Un grand Merci à tous ceux qui ont eu la patience et l'amabilité de m'aider (surtout ilan27 et sfel).
Bon tant pis, en plus je viens d'apprendre qu'un collègue à fais tout ça sur une bdd access mise dans un répertoire partagé en réseau local. Donc mon projet ne sert plus rien (un peu dég' !)
Bon c'est pas grave, demain je finis mon stage et je rentre en France.
Un grand Merci à tous ceux qui ont eu la patience et l'amabilité de m'aider (surtout ilan27 et sfel).
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Le problème n'a plus lieu, tout est rentré dans l'ordre, mais ce n'est pas résolu quand meme pour autant!.
A bientot!! :)
A bientot!! :)
Merci à vous deux,
il y a une manip spéciale à faire pour clore une discussion ou on laisse ça comme ça ?
Encore merci.
il y a une manip spéciale à faire pour clore une discussion ou on laisse ça comme ça ?
Encore merci.
svp expliquer moi cette ligne apartir <a...
echo "<div align=\"center\">".$result->issue." ".$result->lead_depot." ".$result->lead_derby." ".$result->status." ".$result->action_deadline." ".$result->last_update."
<a href=\"modification_donnees_2.php?idissue=".$result->issue."\">modify</a><br>\n" ;
?idissue -> je vais la remplacer par quoi dans ma table ???
.$result->issue. la meme question
echo "<div align=\"center\">".$result->issue." ".$result->lead_depot." ".$result->lead_derby." ".$result->status." ".$result->action_deadline." ".$result->last_update."
<a href=\"modification_donnees_2.php?idissue=".$result->issue."\">modify</a><br>\n" ;
?idissue -> je vais la remplacer par quoi dans ma table ???
.$result->issue. la meme question
Le post est très ancien et je n'ai guère envie de lire les 3 pages de réponses mais je vais te traduire en francais le bout de code que tu a copiés:
//Pour chaque resultat de la requete SQL
while( $result = mysql_fetch_object( $requete ) )
{
//Affichage du champs issue lead_depot lead_derby ....etc......
echo "<div align=\"center\">".$result->issue." ".$result->lead_depot." ".$result->lead_derby." ".$result->status." ".$result->action_deadline." ".$result->last_update."
puis création d'un lien vers la page modif_data.php avec comme paramètre idissue qui prend la valeur du champs issue
<a href=\"modif_data.php?idissue=".$result->issue."\">modify</a><br>\n" ;
}
Voila
//Pour chaque resultat de la requete SQL
while( $result = mysql_fetch_object( $requete ) )
{
//Affichage du champs issue lead_depot lead_derby ....etc......
echo "<div align=\"center\">".$result->issue." ".$result->lead_depot." ".$result->lead_derby." ".$result->status." ".$result->action_deadline." ".$result->last_update."
puis création d'un lien vers la page modif_data.php avec comme paramètre idissue qui prend la valeur du champs issue
<a href=\"modif_data.php?idissue=".$result->issue."\">modify</a><br>\n" ;
}
Voila