{MySQL} Mysql plante sur une requête simple
thob31
-
giheller Messages postés 1882 Date d'inscription Statut Membre Dernière intervention -
giheller Messages postés 1882 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
je travaille actuellement sur un projet de newsletter en php pour mon site, sur un serveur local.
j'ai un fichier php qui me sert à lister les adresses emails dans une bdd, mais malheureusement, quand je le
teste en local, la page ne s'affiche pas, et Windows me dit que Apache à céssé de fonctionner.
Ce qui est d'autant plus étrange, c'est que le même test sur un serveur en ligne fonctionne parfaitement !
Voici le code php du fichier :
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Mailer PHP/DB - list</title>
</head>
<body>
<strong>Système de Newsletter</strong><br /><br />
Liste des inscrits dans la newsletter :<br />
<?php
mysql_connect("localhost", "root", "motdepasse");
mysql_select_db("ma_bdd");
$liste_emails = mysql_query("SELECT * FROM maillisting_test");
// On fait une boucle pour lister le contenu de notre table
while ($donnees = mysql_fetch_array($liste_emails) )
{
?>
<p>
<?php echo $donnees['emails']; ?><br />
<?php
}
mysql_close();
?>
</body>
</html>
Quelqu'un pourrait m'aider à résoudre ce problème bien embêtant ?
Cordialement, thob31.
PS : bien que je développe en localhost, j'utilise mon serveur online pour mettre en place le système, et je ne me suis jamais posé la question de comment configurer le smtp sur un serveur localhost, si quelqu'un sait
comment le faire, merci de me le dire ^^
je travaille actuellement sur un projet de newsletter en php pour mon site, sur un serveur local.
j'ai un fichier php qui me sert à lister les adresses emails dans une bdd, mais malheureusement, quand je le
teste en local, la page ne s'affiche pas, et Windows me dit que Apache à céssé de fonctionner.
Ce qui est d'autant plus étrange, c'est que le même test sur un serveur en ligne fonctionne parfaitement !
Voici le code php du fichier :
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Mailer PHP/DB - list</title>
</head>
<body>
<strong>Système de Newsletter</strong><br /><br />
Liste des inscrits dans la newsletter :<br />
<?php
mysql_connect("localhost", "root", "motdepasse");
mysql_select_db("ma_bdd");
$liste_emails = mysql_query("SELECT * FROM maillisting_test");
// On fait une boucle pour lister le contenu de notre table
while ($donnees = mysql_fetch_array($liste_emails) )
{
?>
<p>
<?php echo $donnees['emails']; ?><br />
<?php
}
mysql_close();
?>
</body>
</html>
Quelqu'un pourrait m'aider à résoudre ce problème bien embêtant ?
Cordialement, thob31.
PS : bien que je développe en localhost, j'utilise mon serveur online pour mettre en place le système, et je ne me suis jamais posé la question de comment configurer le smtp sur un serveur localhost, si quelqu'un sait
comment le faire, merci de me le dire ^^
A voir également:
- {MySQL} Mysql plante sur une requête simple
- Mysql community server - Télécharger - Bases de données
- Iphone 14 simple - Guide
- Plante - Guide
- Simple pdf - Télécharger - PDF
- Simple ocr - Télécharger - Bureautique
21 réponses
bonjour,
il y a deux question sdans ton message.
1 apache a céssé de focntionner : cela arrive de temps en temps, il suffut de le relancer avant de refaire les tests des scripts.
2 pour le serveur smtp local, une recherche dans CCM te donnera la réponse car plusieurs fois traités.
la config de php doit faire pointer le serveur local smtp vers le smtp de ton FAI.
il y a deux question sdans ton message.
1 apache a céssé de focntionner : cela arrive de temps en temps, il suffut de le relancer avant de refaire les tests des scripts.
2 pour le serveur smtp local, une recherche dans CCM te donnera la réponse car plusieurs fois traités.
la config de php doit faire pointer le serveur local smtp vers le smtp de ton FAI.
Apache cesse de fonctionner a chaque fois que j'essaye d'éxecuter le php, je le redémarre chaque fois et c'est chaque fois pareil.
firefox n'affiche simplement pas la page, il dit que le serveur a réinitialisé la connection. si vous parlez de logs, je ne sais pas ou les trouver...
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
bonjour,
le code suivant fonctionne chez moi.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Mailer PHP/DB - list</title>
</head>
<body>
<strong>Système de Newsletter</strong><br /><br />
Liste des inscrits dans la newsletter :<br />
<?php
mysql_connect("localhost", "root", "mysql");
mysql_select_db("bdd");
$result = mysql_query("SELECT * FROM table");
// On fait une boucle pour lister le contenu de notre table
// Ceci montre la requête envoyée à MySQL ainsi que l'erreur. Utile pour déboguer.
if (!$result) {
$message = "Requête invalide : " . mysql_error() . "\n";
$message .= "Requête complète : " . $query;
die($message);
}
for ($i=0;$i<sizeof($result);$i++){
$ligne=mysql_fetch_row($result);
print_r($ligne);
}
/*
while ($donnees = mysql_fetch_array($liste_emails) )
{
echo $donnees['emails'];
echo "<br />";
}
*/
mysql_close();
?>
</body>
</html>
le code suivant fonctionne chez moi.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Mailer PHP/DB - list</title>
</head>
<body>
<strong>Système de Newsletter</strong><br /><br />
Liste des inscrits dans la newsletter :<br />
<?php
mysql_connect("localhost", "root", "mysql");
mysql_select_db("bdd");
$result = mysql_query("SELECT * FROM table");
// On fait une boucle pour lister le contenu de notre table
// Ceci montre la requête envoyée à MySQL ainsi que l'erreur. Utile pour déboguer.
if (!$result) {
$message = "Requête invalide : " . mysql_error() . "\n";
$message .= "Requête complète : " . $query;
die($message);
}
for ($i=0;$i<sizeof($result);$i++){
$ligne=mysql_fetch_row($result);
print_r($ligne);
}
/*
while ($donnees = mysql_fetch_array($liste_emails) )
{
echo $donnees['emails'];
echo "<br />";
}
*/
mysql_close();
?>
</body>
</html>
Il faut aboslument savoir pour apache se plante.
si tu travailles avec easyphp, il faut aller dans fichier log et erreur apache.
si tu travailles avec easyphp, il faut aller dans fichier log et erreur apache.
je vient de regarder les logs d'apache, rien sur ces erreurs, je ne comprends pas... d'autant plus que quand apache cesse de fonctionner, il redémarre tout seul en moins de 1 seconde! je travaille sous wamp.
il va falloir "déboguer" au pas ) pas pour savoir c quei ne va pas.
ton tu prends ton code et tu testes les ligens du début, puis tu racjoutes des lignes au fur et à mesure jusqu'à trouver ce qui ne lui plait pas.
je ne peux faire ça pour toi puisque le code fontionne chez moi.
j'attends ton retour.
post scriptum : la requête fonctionne t-elle en phpmyadmin (si cela existe sous wamp : ou sous un autre nom)
ton tu prends ton code et tu testes les ligens du début, puis tu racjoutes des lignes au fur et à mesure jusqu'à trouver ce qui ne lui plait pas.
je ne peux faire ça pour toi puisque le code fontionne chez moi.
j'attends ton retour.
post scriptum : la requête fonctionne t-elle en phpmyadmin (si cela existe sous wamp : ou sous un autre nom)
apparemment ce serait cette ligne qui fait tout planter
$result = mysql_query("SELECT * FROM matable");
or, j'ai essayé d'éxecuter cette requete sur php my admin, et elle fonctionne très bien...
c'est incompréhensible.
$result = mysql_query("SELECT * FROM matable");
or, j'ai essayé d'éxecuter cette requete sur php my admin, et elle fonctionne très bien...
c'est incompréhensible.
a la place de ça :
mysql_connect("localhost", "root", "mysql");
mysql_select_db("bdd");
essayons ça :
$db_server ="localhost";
$db_name = "bdd";
$username = "root";
$password = "mysql";
#Connexion à la base
$connect = @mysql_connect($db_server,$username,$password) or die ("La connection sur $db_server avec le login root/mysql plantée.");
#select
$db = @mysql_select_db("matable") or die
("Connexion réussie, mais base '$db_name' non trouvée.");
mysql_connect("localhost", "root", "mysql");
mysql_select_db("bdd");
essayons ça :
$db_server ="localhost";
$db_name = "bdd";
$username = "root";
$password = "mysql";
#Connexion à la base
$connect = @mysql_connect($db_server,$username,$password) or die ("La connection sur $db_server avec le login root/mysql plantée.");
#select
$db = @mysql_select_db("matable") or die
("Connexion réussie, mais base '$db_name' non trouvée.");
mince, je suis bête le code tout court executée ( celui que tu ma donné au post 13 ) fonctionne tout seul, couplé avec ton code du post 5, il me donne ça :
Système de Newsletter
Liste des inscrits dans la newsletter :
Notice: Undefined variable: query in C:\wamp\www\PHP-Mailer-LocalHost-DB\list3.php on line 26
Requête invalide : You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'table' at line 1 Requête complète :
Système de Newsletter
Liste des inscrits dans la newsletter :
Notice: Undefined variable: query in C:\wamp\www\PHP-Mailer-LocalHost-DB\list3.php on line 26
Requête invalide : You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'table' at line 1 Requête complète :
j'ai encore dit une bêtise.....
le code a fonctionné, car j'avais ommis de mettre le nom de la table ici :
$result = mysql_query("SELECT * FROM table");
avec le bon nom de table, il y a erreur, comme au tout début....
le code a fonctionné, car j'avais ommis de mettre le nom de la table ici :
$result = mysql_query("SELECT * FROM table");
avec le bon nom de table, il y a erreur, comme au tout début....
bonsoir,
peut-on recadrer le problème.
qu'est qui marche et q'estce ne fonctionne pas ?
le code est pour moi correct, il fonctionne sur tous mes sites.
est-ce pache qui plante ? si oui qui a-t-il dans la log apache.
je ne sais pas où elle est sous wamp (je travaille avec easyphp).
peut-on recadrer le problème.
qu'est qui marche et q'estce ne fonctionne pas ?
le code est pour moi correct, il fonctionne sur tous mes sites.
est-ce pache qui plante ? si oui qui a-t-il dans la log apache.
je ne sais pas où elle est sous wamp (je travaille avec easyphp).