Page 1 sur 2
effacer un utilisater
Posté : 12 juin 2016, 12:41
par Henrigo
Salut a tous j'ai fais un formular pour efface le utilisateur , et en suite j'ai ecris un code php qui est ci dessous qui lorsqu'on devrait entre le nom d'un utilisateur qu'on aimerai efface et en cliquant sur Delete , son nom devrait etre efface de la base de donnee malheurensement ce ne marche pas ,quelqu'un peut il me dire ce qui ne marche pas?
Merci bien
<?php
if(isset($_POST['delete'])) {
define('DB_HOST', 'localhost');
define('DB_NAME', 'kantteile');
define('DB_USER','root');
define('DB_PASSWORD','');
$con=mysql_connect(DB_HOST,DB_USER,DB_PASSWORD) or die("Failed to connect to MySQL: " . mysql_error());
$db=mysql_select_db(DB_NAME,$con) or die("Failed to connect to MySQL: " . mysql_error());
if(! $con ) {
die('Could not connect: ' . mysql_error());
}
$emp_id = $_POST['UserNameID'];
$sql = "DELETE FROM username WHERE 'username' , 'UserNameID' = '' " ;
mysql_select_db('kantteile');
$retval = mysql_query( $sql, $con );
if(! $retval ) {
die('les donees ne peuvent pas etre efface: ' . mysql_error());
}
echo "les donnees ont ete efface\n";
mysql_close($con);
}else {
}
Re: effacer un utilisater
Posté : 12 juin 2016, 12:49
par or 1
$sql = "DELETE FROM username WHERE 'username' , 'UserNameID' = '' " ;
cela ne donne pas une requete sql valide, encore moins une requete qui va supprimer un utulisateur par son nom.
il faut donc commencer par trouver la syntaxe correcte dans phpmyadmin.
Re: effacer un utilisater
Posté : 12 juin 2016, 12:57
par Henrigo
Merci bien de ta reponse je ne sais pas si c'est moi qui ne comprend pas bien, dans phpmyadmin lorsque j'essaye de vouloir efface un utilisateur, se trouvant dans ma base de donnee phpmyadmin ecrit ceci en rouge
DELETE FROM username WHERE 'username' , 'UserNameID' = 4 ;
lorsqu'il sagit de l'utilisater avec le UserNameId =4
Re: effacer un utilisater
Posté : 13 juin 2016, 10:12
par Spols
Un point à la place de la virgule ?
Re: effacer un utilisater
Posté : 13 juin 2016, 11:08
par moogli
salut
DELETE FROM username WHERE 'username' , 'UserNameID' = 4 ;
ceci n'est pas du sql valide c'est normal qu'il y ai une erreur.
le prédicat (where) doit contenir des couples champ / valeur. De plus la séparation des conditions doit être un opérateur logique (et, ou etc).
en clair ta requête devrait être dans ce style
DELETE FROM username WHERE UserNameID = 4 ;
en supposant que UserNameID soit une colonne de la table username (de préférence la clef primaire).
je pense que le nom de la table n'est top il devrait plutôt être user / utilisateur / etc.
@+
Re: effacer un utilisater
Posté : 13 juin 2016, 11:09
par Henrigo
meme avec le point, la requete n'est pas effectuée
Re: effacer un utilisater
Posté : 13 juin 2016, 12:55
par Henrigo
merci bien malheureusement ca na marche pas
Re: effacer un utilisater
Posté : 13 juin 2016, 13:03
par Henrigo
Salut Moderateur,
lorsque je supprime dans mon tableau un utilisateur , phpmyadmin me revois cela
Re: effacer un utilisater
Posté : 13 juin 2016, 14:25
par moogli
Salut Moderateur,
il m'arrive d'être humble tu peu utiliser mon pseudo

)
lorsque je supprime dans mon tableau un utilisateur , phpmyadmin me revois cela
je reste sur ma faim
Pour avancer :
qu'elle est la structure de la table ? (je veux le create table que tu as utilisé).
c'est quoi l'erreur que t'indique php myadmin ?
et après on verra comment faire en php
@+
Re: effacer un utilisater
Posté : 13 juin 2016, 14:46
par Henrigo
salut Moogli,
voici a quoi resemble mon tableau
UserNameID userName pass
1 Nouem1 2016
2 Nouem2 2017
3 Nouem3 2020
4 Nouem4 2021
et j'ai fais un fomulaire dans le quel, j'aimerai qu 'on entre le username de l'utilisateur donc on aimerai efface et que cela ait effet sur mon tableau
malheureusement ca ne me reussi pas.
et lorsque j'essaye manuellement de le faire phpmyadmin me renvoi la requete plus haut c'est la raison pour laquel j'ai ecris cela dans mon code.
mais j'aimerai que cela puisse fonctionner sur tout utilisateur donc on aimerrai efface de la base de donnee.
Merci
Re: effacer un utilisater
Posté : 13 juin 2016, 15:09
par moogli
salut,
La requête que je t'ai fournit est correcte
DELETE FROM username WHERE UserNameID = 4 ;
tu peux aussi utiliser le nom
DELETE FROM username WHERE userName = 'xxx' ;
suivant ce que tu préfères.
La requête tu la construit "dynamiquement" en concaténant ce qu'il y a dans le formulaire avec le début de la requête
par exemple
<?php
$sql = 'DELETE FROM username WHERE UserNameID = '.$_POST['UserNameID'];
Prends pas le code tel quel c'est sensible à un injection sql !
Pour info : il ne faut plus utiliser l'extension mysql, mais l'extension mysql
i http://php/net/mysqli
@+
Re: effacer un utilisater
Posté : 13 juin 2016, 16:01
par Henrigo
malheureusement, meme dynamiquement ca ne marche pas.
Re: effacer un utilisater
Posté : 13 juin 2016, 16:32
par moogli
quel est ton code ?
je ne le ferais pas pour toi.
tu as déjà la requête sql.
as tu une erreur ?
as tu affiché la requête construite pou la tester ensuite ?
est ce que tu test le retour de mysql_query ? (si false utilise mysl_error).
@+
Re: effacer un utilisater
Posté : 13 juin 2016, 16:43
par Henrigo
tu vois bien que j'ai deja eu a faire quelque chose, tu peus voire mon cote plus , mais il s'avere que j'ai un probleme c'est la raioson pour laquel j'ai expose mon probleme ici.
Re: effacer un utilisater
Posté : 14 juin 2016, 08:43
par Henrigo
Moogli comme dit j'espere que ma reponse ne ta pas irrite, car comme dit je me donne de la peine avant de pose mon probleme.