Problème php
Résolu
darkchristophetd
Messages postés
1100
Date d'inscription
Statut
Contributeur
Dernière intervention
-
darkchristophetd Messages postés 1100 Date d'inscription Statut Contributeur Dernière intervention -
darkchristophetd Messages postés 1100 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Je suis en train de faire un petit carnet d'adresse en php.
Mais j'ai un problème : en le testant en local avec wamp, il me met ce message d'erreur:
'Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\wamp\www\exos php\carnet adresse.php on line 15'
Voici mon code :
Je précise au passage que dans ma base sql, j'ai 5 champs (prenom en varchar, nom en varchar, telephone en int, adresse en varchar et email en varchar).
Pourquoi wamp affiche-t-il ce message ??
Merci
Je suis en train de faire un petit carnet d'adresse en php.
Mais j'ai un problème : en le testant en local avec wamp, il me met ce message d'erreur:
'Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\wamp\www\exos php\carnet adresse.php on line 15'
Voici mon code :
<html>
<head>
<title>Carnet d'adresse</title>
</head>
<body>
<?php
if(isset($_POST['prenom'])and isset($_POST['nom']) and isset($_POST['telephone']) and isset($_POST['adresse']) and isset($_POST['email']))
{
$prenom = $_POST['prenom'];
$nom = $_POST['nom'];
$telephone = $_POST['telephone'];
$adresse = $_POST['adresse'];
$email = $_POST['email'];
mysql_connect('localhost', 'root', '');
mysql_select_db('cours_php');
$reponse = mysql_query('INSERT INTO carnet_adresse VALUES("", "$prenom", "$nom", "$telephone", "$adresse", "$email")');
while ($donnees = mysql_fetch_array($reponse) )
{
?>
<address>
<strong><?php echo $donnees ['nom']?></strong><br>
<strong><?php echo $donnees ['prenom']?></strong><br>
<strong><?php echo $donnees ['telephone']?></strong><br>
<strong><?php echo $donnees ['adresse']?></strong><br>
<strong><?php echo $donnees ['email']?></strong><br>
</address>
<?php
mysql_close();
}
}
else
{
?>
<h1>Votre contact</h1>
<form action="carnet adresse.php" method="post">
Nom : <input type="text" name="prenom" value=""><br>
Prénom : <input type="text" name="nom" value=""><br>
Numéro de téléphone : <input type="text" name="telephone" value="" maxlength="10"><br>
Adresse : <input type="text" name="adresse" value=""><br>
E-mail : <input type="text" name="email" value=""><br>
<input type="submit" value="Valider"><br>
</form>
<?php
}
?>
</body>
</html>
Je précise au passage que dans ma base sql, j'ai 5 champs (prenom en varchar, nom en varchar, telephone en int, adresse en varchar et email en varchar).
Pourquoi wamp affiche-t-il ce message ??
Merci
Configuration: Windows XP Firefox 2.0.0.6
3 réponses
-
Bonjour.
Ce genre de message d'erreur provient d'un problème avec ta requête :
Elle est mal construite (ou la connexion ne s'est pas faite). Du coup, $reponse prend la valeur FALSE au lieu de prendre un array contenant les pointeurs vers les lignes selectionnées, et le fetch_array plante...
A faire :mysql_connect('localhost', 'root', '') or die ('Erreur de connection à MySQL '.mysql_error()); mysql_select_db('cours_php') or die ('Erreur de connection à la base '.mysql_error()); $requete = 'INSERT INTO carnet_adresse VALUES("", "$prenom", "$nom", "$telephone", "$adresse", "$email")'; $reponse = mysql_query($requete) or die ('Erreur de requête '.$requete.'<br />'.mysql_error());
En cas de problème de connexion (ou de requête), le or die te renverra le message d'erreur de MySQL et stoppe le script. -
Juste une question bête :() :
Où dois-je insérer ces instructions ???
merci et dsl pour la question -
merci