modifier une entrée d'une base de donnes
Dernière réponse : dans Programmation
Bonjour!
J'ai créé une table pour faire une sorte d'annuaire contenant: id(pour l'auto-increment), pseudo, adresse...
J'aimerai que quand l'utilisateur click sur le pseudo, il puisse modifier les informations le concernant.
Comment récupérer l'entrée de la table correspondant au pseudo sur lequel on a cliqué?
J'ai créé une table pour faire une sorte d'annuaire contenant: id(pour l'auto-increment), pseudo, adresse...
J'aimerai que quand l'utilisateur click sur le pseudo, il puisse modifier les informations le concernant.
Comment récupérer l'entrée de la table correspondant au pseudo sur lequel on a cliqué?
Autres pages sur : modifier entree base donnes
Lassé par la pub ? Créez un compte
ok ok.
J'utilise une base de donnees mysql.
J'ai un formulaire sur une page web qui permet à l'utilisateur d'entrer ses coordonnees dans ma table "contacts", donc il entre pseudo, adresse tel etc. et puis ça envoie les infos dans ma table.
Ensuite j'ai sur ma page un tableau ou sur la première ligne il y a les titres "pseudo", "adresse" etc, puis sur les ignes suivantes de ce tableau, il y a , sur chaque ligne, les coordonnes entrées par chaque utilisateur.
Et je voudrais que quand l'utilisateur clique sur la case du tableau ou est ecrit son pseudo, il puisse modifier ses coordonnes.
Mon probleme est donc de recuperer la valeur du pseudo pour ensuite pouvoir repérer sur quelle entrée de la base de données je vais agir...
Euh... Ca va la?
J'utilise une base de donnees mysql.
J'ai un formulaire sur une page web qui permet à l'utilisateur d'entrer ses coordonnees dans ma table "contacts", donc il entre pseudo, adresse tel etc. et puis ça envoie les infos dans ma table.
Ensuite j'ai sur ma page un tableau ou sur la première ligne il y a les titres "pseudo", "adresse" etc, puis sur les ignes suivantes de ce tableau, il y a , sur chaque ligne, les coordonnes entrées par chaque utilisateur.
Et je voudrais que quand l'utilisateur clique sur la case du tableau ou est ecrit son pseudo, il puisse modifier ses coordonnes.
Mon probleme est donc de recuperer la valeur du pseudo pour ensuite pouvoir repérer sur quelle entrée de la base de données je vais agir...
Euh... Ca va la?
Citation :
Euh... Ca va la?
on va voir
je suppose que tu bosses avec du php (à défaut)
Citation :
J'ai un formulaire sur une page web qui permet à l'utilisateur d'entrer ses coordonnees dans ma table "contacts", donc il entre pseudo, adresse tel etc. et puis ça envoie les infos dans ma table.
tu arrives déjà à récupérer les données d'une page, il est où le problème. tu fais pareil pour la case du tableau.
tu peux, sur la case, mettre un lien du genre
echo "<a href='sciprt.php?pseudo=$pseudo'>$pseudo</a>";
une fois cliqué, tu le récupères dans script.php dans la variable $_GET['pseudo']
d'accord d'accord
bon j'ai un peu du mal...
une fois que j'ai cliqué sur le pseudo j'accéde à un nouveau formulaire pour modifier les données. Comment je fais pour que dans les champs soient écrits les valeurs d'origine?
J'ai essayé value="<?php echo($pseudo) ;?>" et value=".$pseudo.", mais rien ne marche, à chaque fois dans le champs ça écrit <?php echo($pseudo) ;?> ou .$pseudo. et non pas le pseudo...
bon j'ai un peu du mal...
une fois que j'ai cliqué sur le pseudo j'accéde à un nouveau formulaire pour modifier les données. Comment je fais pour que dans les champs soient écrits les valeurs d'origine?
J'ai essayé value="<?php echo($pseudo) ;?>" et value=".$pseudo.", mais rien ne marche, à chaque fois dans le champs ça écrit <?php echo($pseudo) ;?> ou .$pseudo. et non pas le pseudo...
merci d'etre patient avec moi!
voila le code :
<html>
<head>
<title>modification</title>
</head>
<body style="color: rgb(255, 255, 255); background-color: rgb(102,
51, 255);"
alink="#ffccff" link="#ffccff" vlink="#cc66cc">
<?php
$cnx = mysql_connect( "localhost", "root", "" ) ;
$db = mysql_select_db( "contacts" ) ;
$personne = $_POST["pseudo"] ;
$sql = "SELECT *
FROM contacts
WHERE pseudo= $personne ;
$requete = mysql_query( $sql, $cnx ) ;
if( $result = mysql_fetch_object( $requete ) )
{
?>
<form method='post' action='modifier.php'>
<input type="hidden" name="id" value="<?php echo($id) ;?>">
<table style="width: 640px; height: 222px;">
<tbody>
<tr>
<td>VotrePseudo
(ou nom normal):</td>
<td><input name="pseudo" id="pseudo" value=".$pseudo."
size="30" type="text"></td>
</tr>
<tr>
<td>Votre E-mail:</td>
<td><input name="email" id="email" value=".$email."
size="60"></td>
</tr>
<tr>
<td>Votre téléphone:</td>
<td><input name="telephone" id="telephone" value=".$telephone."
size="60"></td>
</tr>
<tr>
<td>Votre adresse MSN:</td>
<td><input name="msn" id="msn" value=".$msn." size="60"></td>
</tr>
<tr>
<td>Votre adresse postale:</td>
<td><input name="adresse" id="adresse" value=".$adresse."
size="60"></td>
</tr>
<tr>
<td>Le titre de votre témoignage:</td>
<td><input name="temoignage" id="temoignage"
value=".$temoignage."
size="60"></td>
</tr>
</tbody>
</table>
<input value="Envoyer" type="submit"> - <input
value="Annuler" type="reset">
</form>
<?php
}//fin if
?>
</body>
</html>
oui pour l'extention je ne sais pas quoi mettre, si je mets .php ça bug au niveau de l'ouverture du formulaire<form>, et si je mets .html, je ne suis pas sûr que les lignes php marchent...
voila le code :
<html>
<head>
<title>modification</title>
</head>
<body style="color: rgb(255, 255, 255); background-color: rgb(102,
51, 255);"
alink="#ffccff" link="#ffccff" vlink="#cc66cc">
<?php
$cnx = mysql_connect( "localhost", "root", "" ) ;
$db = mysql_select_db( "contacts" ) ;
$personne = $_POST["pseudo"] ;
$sql = "SELECT *
FROM contacts
WHERE pseudo= $personne ;
$requete = mysql_query( $sql, $cnx ) ;
if( $result = mysql_fetch_object( $requete ) )
{
?>
<form method='post' action='modifier.php'>
<input type="hidden" name="id" value="<?php echo($id) ;?>">
<table style="width: 640px; height: 222px;">
<tbody>
<tr>
<td>VotrePseudo
(ou nom normal):</td>
<td><input name="pseudo" id="pseudo" value=".$pseudo."
size="30" type="text"></td>
</tr>
<tr>
<td>Votre E-mail:</td>
<td><input name="email" id="email" value=".$email."
size="60"></td>
</tr>
<tr>
<td>Votre téléphone:</td>
<td><input name="telephone" id="telephone" value=".$telephone."
size="60"></td>
</tr>
<tr>
<td>Votre adresse MSN:</td>
<td><input name="msn" id="msn" value=".$msn." size="60"></td>
</tr>
<tr>
<td>Votre adresse postale:</td>
<td><input name="adresse" id="adresse" value=".$adresse."
size="60"></td>
</tr>
<tr>
<td>Le titre de votre témoignage:</td>
<td><input name="temoignage" id="temoignage"
value=".$temoignage."
size="60"></td>
</tr>
</tbody>
</table>
<input value="Envoyer" type="submit"> - <input
value="Annuler" type="reset">
</form>
<?php
}//fin if
?>
</body>
</html>
oui pour l'extention je ne sais pas quoi mettre, si je mets .php ça bug au niveau de l'ouverture du formulaire<form>, et si je mets .html, je ne suis pas sûr que les lignes php marchent...
je te le confirme, si tu mets .html, le php n'est pas interprete et donc ne fonctionne pas.
pour ton code, quand tu le postes, il faut l'encadrer par des balises code [ code ] [ /code ] sans espaces.
pour l'utilisation de mysql_fetch_object je t'invite à lire:
http://fr.php.net/mysql_fetch_object
tu completes les corrections, tu modifies l'extension de ton fichier en .php, ca devrait marcher par la suite.
si un fichier php ne marche pas, faut regarder les erreurs, ca donne plein d'information.
les erreurs sont dans le fichier log d'apache (si tu as apache).
son emplacement dépend de ton installation
pour ton code, quand tu le postes, il faut l'encadrer par des balises code [ code ] [ /code ] sans espaces.
pour l'utilisation de mysql_fetch_object je t'invite à lire:
http://fr.php.net/mysql_fetch_object
<html>
<head>
<title>modification</title>
</head>
<body style="color: rgb(255, 255, 255); background-color: rgb(102,
51, 255);"
alink="#ffccff" link="#ffccff" vlink="#cc66cc">
<?php
$cnx = mysql_connect( "localhost", "root", "" ) ;
$db = mysql_select_db( "contacts" ) ;
$personne = $_POST["pseudo"] ;
$sql = "SELECT *
FROM contacts
WHERE pseudo= $personne ; "; // la tu as oublié de refermé les "
...
<input type="hidden" name="id" value="<?php echo $result->id ;?>">
<!-- le mysql_fetch_object retourne une classe. $id tout seul n'est pas reconnu -->
...
<td><input name="pseudo" id="pseudo" value="<?= $result->pseudo ?>"
size="30" type="text"></td>
...
tu completes les corrections, tu modifies l'extension de ton fichier en .php, ca devrait marcher par la suite.
si un fichier php ne marche pas, faut regarder les erreurs, ca donne plein d'information.
les erreurs sont dans le fichier log d'apache (si tu as apache).
son emplacement dépend de ton installation
oui j'ai regardé les données existent.
ok voila le code:
maintenant ça m'affiche :
Warning: mysql_fetch_object(): supplied argument is not a valid MySQL result resource in c:\logiciel\easyphp\www\contacts\formulairemodif.php on line 16
et si je n'utilise pas mysql_fetch_object ça me met que des <BR>
ok voila le code:
<html>
<head>
<title>modification</title>
</head>
<body style="color: rgb(255, 255, 255); background-color: rgb(102, 51, 255);"
alink="#ffccff" link="#ffccff" vlink="#cc66cc">
<?php
$cnx = mysql_connect( "localhost", "root", "" ) ;
$db = mysql_select_db( "contacts" ) ;
$pseudo = $_GET["personne"] ;
$sql = "SELECT * FROM contacts
WHERE pseudo= $pseudo ";
$requete = mysql_query( $sql, $cnx ) ;
//affichage des données:
if( $result = mysql_fetch_object( $requete ) )
{
?>
<form method='post' action='modifier.php'>
<input type="hidden" name="id" value="<?php echo $result->id ;?>">
<table style="width: 640px; height: 222px;">
<tbody>
<tr>
<td>VotrePseudo</td>
<td><input name="pseudo" id="pseudo" value="<?= $result->pseudo ?>"
size="30" type="text"></td>
</tr>
<tr>
<td>Votre E-mail:</td>
<td><input name="email" id="email" value="<?= $result->email ?>"
size="60"></td>
</tr>
....
</tbody>
</table>
<input value="Envoyer" type="submit"> - <input
value="Annuler" type="reset">
</form>
<?php
}//fin if
?>
</body>
</html>
maintenant ça m'affiche :
Warning: mysql_fetch_object(): supplied argument is not a valid MySQL result resource in c:\logiciel\easyphp\www\contacts\formulairemodif.php on line 16
et si je n'utilise pas mysql_fetch_object ça me met que des <BR>
il faut lire ce que fait la fonction avant de vouloir l'enlever, je t'ai donné le lien plus haut remplaces les lignes mysql... par
$cnx = mysql_connect( "localhost", "root", "" ) or die (mysql_error());
$db = mysql_select_db( "contacts" ) or die (mysql_error());
$pseudo = $_GET["personne"] ;
$sql = "SELECT * FROM contacts
WHERE pseudo= $pseudo ";
$requete = mysql_query( $sql, $cnx ) or die (mysql_error());
et repostes l'erreur
tu es sûr de ta base? de la table etc...
mmm...
je dois encore mettre la ligne :
if( $result = mysql_fetch_object( $requete ) )
ou pas?
Si je la mets ça affiche rien.
Et si je la mets pas ça mets encore des <BR>...
J'ai regardé le fichier log d'Apache, il dit :
Undefined variable: result in c:\logiciel\easyphp\www\contacts\formulairemodif.php on line 17
et ça sur toutes les lignes bien sûr!
je dois encore mettre la ligne :
if( $result = mysql_fetch_object( $requete ) )
ou pas?
Si je la mets ça affiche rien.
Et si je la mets pas ça mets encore des <BR>...
J'ai regardé le fichier log d'Apache, il dit :
Undefined variable: result in c:\logiciel\easyphp\www\contacts\formulairemodif.php on line 17
et ça sur toutes les lignes bien sûr!
mais t'a lu ce que ca fait ou pas????
mysql_fetch_objet RECUPERE le resultat de ta requete, si tu l'enleves a quoi sert ton programme?
undefined variable => variable indéfini (en d'autres termes inconnu)
c'est normal si tu enleves la ligne if( $result = mysql_fetch_object( $requete ) ) qui la définit
t'as rajouté les die (mysql_error()) que je t'ai dit? ca te donne quoi?
t'as exécuté ta requête sur phpMyAdmin?
etc, etc...
$cnx = mysql_connect( "localhost", "root", "" ) ; // ca se connecte à la base
$db = mysql_select_db( "contacts" ) ; // ca selectionne la table
....
$requete = mysql_query( $sql, $cnx ) ; // ca execute la requete
if( $result = mysql_fetch_object( $requete ) ) // ca recupere le resultat
mysql_fetch_objet RECUPERE le resultat de ta requete, si tu l'enleves a quoi sert ton programme?
undefined variable => variable indéfini (en d'autres termes inconnu)
c'est normal si tu enleves la ligne if( $result = mysql_fetch_object( $requete ) ) qui la définit
t'as rajouté les die (mysql_error()) que je t'ai dit? ca te donne quoi?
t'as exécuté ta requête sur phpMyAdmin?
etc, etc...
Lassé par la pub ? Créez un compte
- Contenus similaires :
Tags :
- ForumBase de données et c
- ForumBase de données word 2003
- ForumCréer une base de données avec java
- ForumBase de données c
- ForumJava base de donne
- solutionsDonnées formulaire vers base de données
- ForumConnexion base de données free
- ForumPhpmyadmin vider base de donne
- ForumBase de donnée java
- solutionsCréer site base de données
- Voir plus