8791 sujets

Développement web côté serveur, CMS

Bonsoir,

Je suis débutant en php/mysql et j'ai un probléme bloquant j'aurais voulu savoir si vous pouviez m'aider ...
J'utilise:
-wamp server
-la version 2.2.11 de apache
-la version 5.3.0 de php et
-MySQL client version: mysqlnd 5.0.5-dev - 081106 - $Revision: 1.3.2.27

Je suis en local, et j'interroge la base creation par cette requête simple:
<code><?php
mysql_connect("localhost", "test", "test");
mysql_select_db("creation");

$reponse = mysql_query("SELECT * FROM laine"); // Requête SQL


// On fait une boucle pour lister tout ce que contient la table :

while ($donnees = mysql_fetch_array($reponse) )
{
?>
<p>
Produit numéro:<?php echo $donnees['code_prod']; ?><br />
Catégorie numéro<?php echo $donnees['code_cat']; ?><br />
Couleur:<?php echo $donnees['code_couleur']; ?><br />
</p>
<?php
}

mysql_close(); // Déconnexion de MySQL
?></code>

Quand je charge la page qui contient ce script, j'ai un message d'erreur windows qui dit :
Apache HTTP Server has encountered a problem and needs to close. We are sorry for the inconvenience.

En espérant que vous pourrez m'aider à trouver une solution.
Merci

Johann
Bonsoir,

débutante aussi... il semble qu'il y ait un bug avec php 5.3 pour mysql_close et qui oblige à indiquer à cette fonction un paramètre au moment de son appel. Essaie donc:

$db_connect = mysql_connect("localhost", "test", "test");

mysql_close($db_connect);


Par ailleurs, si tu es en local, pourquoi mysql_connect("localhost", "test", "test")? Il me semblait que les identifiants locaux (donc à utiliser avec Wamp) étaient plutôt: mysql_connect("localhost", "root", "")? Mais je dis peut-être une bêtise...

Polly Jean
Va voir dans wamp : clic gauche --> Apache --> Apache Error Log, tu auras peut-être la raison du crash.

Sinon, peux-tu éditer ton post pour corriger les balises CODE ? Elles doivent être netourées de [ ] et non pas de < >. Merci Smiley cligne
Modérateur
Hello,

Polly-Jean a écrit :

[...]
$db_connect = mysql_connect("localhost", "test", "test");

mysql_close($db_connect);

[...]


+1
À noter que de toute manière la connexion se fermera à la fin du script et que la connexion n'est pas persistante mysql_pconnect().

Polly-Jean a écrit :

[...]
Par ailleurs, si tu es en local, pourquoi mysql_connect("localhost", "test", "test")? Il me semblait que les identifiants locaux (donc à utiliser avec Wamp) étaient plutôt: mysql_connect("localhost", "root", "")? Mais je dis peut-être une bêtise...

Polly Jean


C'est exact par défaut. En revanche, il est tout à fait possible de créer un compte identifié et sécurisé par mot de passe crypté. Donc, bien que je trouve étrange le test, test, ça paraît juste.

Je suis du même avis que Mistike, merci de rééditer ton code. En outre, je me permets juste de corriger un peu mieux ton code sur différents points :


<?php
$connect = mysql_connect("localhost", "test", "test") or die("connexion au serveur impossible");
mysql_select_db("creation") or die("connexion à la base impossible");

$reponse = mysql_query("SELECT * FROM laine",$connect) or die ("requête impossible"); // Requête SQL


// On fait une boucle pour lister tout ce que contient la table :

while ($donnees = mysql_fetch_array($reponse) ){
?>
<p>
Produit numéro:<?php echo $donnees['code_prod']; ?><br />
Catégorie numéro<?php echo $donnees['code_cat']; ?><br />
Couleur:<?php echo $donnees['code_couleur']; ?><br />
</p>
<?php
}

mysql_close($connect); // Déconnexion de MySQL
?>


Je voudrais mettre en avant que ce forum n'est pas dans le but de l'apprentissage de langage serveur. (cf. règles du forum langages serveurs)

Bon code
Modifié par Nolem (13 Dec 2009 - 02:43)
Salut,

Polly-Jean a écrit :
il semble qu'il y ait un bug avec php 5.3 pour mysql_close et qui oblige à indiquer à cette fonction un paramètre au moment de son appel.
+1 sauf qu'il ne s'agit pas d'un bug mais qu'à priori l'identifiant de connexion soit devenu obligatoire.

Quoi qu'il en soit le message d'erreur ressemble plus à un problème d'instabilité de Wamp : j'aurais tendance à faire une réinstall.
Merci beaucoup pour vos réponses, c'est gentil d'avoir pris un peu de votre temps pour vous pencher sur mon probléme. Il n'est pas encore résolu mais j'y travail. Je vais commencer réinstaller le server.

Merci, johann