Problême mysql php
Résolu
Jidoune
Messages postés
132
Statut
Membre
-
Jidoune Messages postés 132 Statut Membre -
Jidoune Messages postés 132 Statut Membre -
Bonjour, je suis en train de faire une fonction de suppression en php pour mon site web qui est déja hébergé. Cepedant, je en suis pas capable de supprimer et il m'envois toujours un message d'erreur.
voici le code pour vous éclaircir:
<?php
try
{
$bdd = new PDO('mysql:host=localhost;dbname=phpbb', 'root', 'admin');
}
catch(Exception $e)
{
die('Erreur : '.$e->getMessage());
}
if(!isset($_POST["tele"]) || $_POST["tele"]=="")
{
echo 'Le champ num?ro de t?l?phone est vide';
}
else
{
$tel = $_POST["tele"];
$reponse=$bdd->query("SELECT * FROM comptes_utilisateurs");
while($donnee = $reponse->fetch())
{
$id = $donnee['id_utilisateur'];
$donnee=$bdd->query("DELETE FROM comptes_utilisateurs WHERE tel = '$tel'
AND admin ='0'")
or die ("Pb avec la requette ");
if(!$reponse)
{
echo 'Erreur acc?s ? la base de donn?es lors de la suppression du compte utilisateur';
}else
{
header('Location: admin.php');
}
}
}
?>
voici le code pour vous éclaircir:
<?php
try
{
$bdd = new PDO('mysql:host=localhost;dbname=phpbb', 'root', 'admin');
}
catch(Exception $e)
{
die('Erreur : '.$e->getMessage());
}
if(!isset($_POST["tele"]) || $_POST["tele"]=="")
{
echo 'Le champ num?ro de t?l?phone est vide';
}
else
{
$tel = $_POST["tele"];
$reponse=$bdd->query("SELECT * FROM comptes_utilisateurs");
while($donnee = $reponse->fetch())
{
$id = $donnee['id_utilisateur'];
$donnee=$bdd->query("DELETE FROM comptes_utilisateurs WHERE tel = '$tel'
AND admin ='0'")
or die ("Pb avec la requette ");
if(!$reponse)
{
echo 'Erreur acc?s ? la base de donn?es lors de la suppression du compte utilisateur';
}else
{
header('Location: admin.php');
}
}
}
?>
5 réponses
-
Quelle erreur est retournée? "Pb avec la requette "?
Si oui, remplace :or die ("Pb avec la requette ");
paror die (mysql_error());
-
quand je met "or die (mysql_error());", sa me retourne rien.
-
essaye de remplacer cette ligne :
$donnee=$bdd->query("DELETE FROM comptes_utilisateurs WHERE tel = '$tel'
AND admin ='0'")
par :
$donnee=$bdd->query('DELETE FROM comptes_utilisateurs WHERE tel = "' . $tel . '" AND admin ="' . 0 . '"')
lorsque j'etait en train de creer un site web dynamique pour un labiratoire, j'ai renconter le même problème, mais j'ai reesser à le resoulu de cette facone.
essaye et repond moi si ça marche pas.
bon courage. -
Moi j'aurais plutôt mis comme cela :
$donnee=$bdd->query("DELETE FROM comptes_utilisateurs WHERE tel = '".$tel."'
AND admin =0")
C'est lorsque l'on compare la valeur d'un champ à une variable que les . sont nécessaires. -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
merci j'ai régler mon problème voici ma solution:
mysql_query("DELETE FROM comptes_utilisateurs WHERE tel = '$tel' AND admin = '0'")
j'ai enlever la référence bdd et j'ai fais les commande mysql par defaut