Affichage de Warning c est étrange!

Eléphant du PHP | 114 Messages

03 nov. 2006, 18:09

Bonjour j' ai des Warning qui apparaisse je suis en plaine apprentissage du php.Donc j ai prit un book de chez Anaska php5 avancé donc je m'éxerce dessu mais là je suis face à un problème qui me dépasse actuellement.J ai c est 3 Warning qui s affiche
Warning: mysqli_stmt_execute() expects parameter 1 to be mysqli_stmt, boolean given in C:\wamp\www\Gestion de publication\listing.php on line 11

Warning: mysqli_stmt_bind_result() expects parameter 1 to be mysqli_stmt, boolean given in C:\wamp\www\Gestion de publication\listing.php on line 14

Warning: mysqli_stmt_fetch() expects parameter 1 to be mysqli_stmt, boolean given in C:\wamp\www\Gestion de publication\listing.php on line 17
Voici mon code
<?php
//connection à la base de donnée//
include_once'connection.inc.php';

//creation de la requète sql
$sql ='SELECT id_article, titre, auteur, date_pub
FROM article ORDER BY date_pub DESC LIMITE 0,20';

//préparation et exécution de la requete
$rqp = mysqli_prepare($link, $sql);
mysqli_stmt_execute($rqp);

//Association des variables
mysqli_stmt_bind_result($rqp,$id, $titre,$auteur,$date_pub);

// on boucle sur l'ensemble des enregistrements:
while(mysqli_stmt_fetch($rqp)){
	//on formate la date
	$jour = substr($date_pub, 8, 2);
	$mois = substr($date_pub, 5, 2);
	$annee = substr($date_pub, 0, 4);
	$date = $jour.'/'.$mois.'/'.$annee;
	
	// on crée l'affichage
	echo "<a ref='detail.php?id_article=$id'>$titre</a>";
	echo "par $auteur.<font size=2> Publié le $date</font><br>";
}

?>
A oui je suis sur un server Wamp5
Merci d'avance pour votre aide

ViPHP
ViPHP | 1961 Messages

03 nov. 2006, 20:35

Bonjour,

Moi je commencerais par tester le retour de
$rqp = mysqli_prepare($link, $sql); 
Vu tes messages, j'ai tendance à croire que $rqp est null.
Deux choses sont infinies, l'Univers et la sottise humaine!!
Mais je ne suis pas sur de ce que j'affirme au sujet de l'Univers.

A. Einstein

Eléphant du PHP | 114 Messages

03 nov. 2006, 20:45

merci pour ton aide comment puis je faire pour voir c est la valeur est null?

ViPHP
ViPHP | 1961 Messages

03 nov. 2006, 20:53

Tu exécutes
$rqp = mysqli_prepare($link, $sql) or die("Erreur de préparation" . $link->error . '<br />);
// En s'aasure d'avantage
if (empty($rqp)){
   echo 'Le prepare statment est NULL';
   exit();
}
Deux choses sont infinies, l'Univers et la sottise humaine!!
Mais je ne suis pas sur de ce que j'affirme au sujet de l'Univers.

A. Einstein

Eléphant du PHP | 114 Messages

03 nov. 2006, 21:37

ok je vai testé dessuite merci

Eléphant du PHP | 114 Messages

03 nov. 2006, 21:45

voiçi se que sa me retourne
Warning: mysqli_prepare() expects parameter 1 to be mysqli, null given in C:\wamp\www\test\index.php on line 10
Erreur de préparation

ViPHP
ViPHP | 1961 Messages

03 nov. 2006, 21:50

Comme tu le vois, j'etais pas loin de la vérité, c'est ton paramètre '$link' qui est null, je suppose que tu ne testes pas le retour de la connexion.
essaie ceci en remplaçant les valeurs ("localhost", "my_user", "my_password", "my_database") par les tiennes
<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "my_database");

/* Vérification de la connexion */
if (mysqli_connect_errno()) {
   printf("Echec de la connexion: %s\n", mysqli_connect_error());
   exit();
}

printf("Information sur le serveur : %s\n", $mysqli->host_info);

/* Fermeture de la connexion */
$mysqli->close();
?> 
Deux choses sont infinies, l'Univers et la sottise humaine!!
Mais je ne suis pas sur de ce que j'affirme au sujet de l'Univers.

A. Einstein

Eléphant du PHP | 114 Messages

03 nov. 2006, 22:04

voici
Information sur le serveur : localhost via TCP/IP
Warning: mysqli_prepare() expects parameter 1 to be mysqli, null given in C:\wamp\www\test\index.php on line 24
Erreur de préparation

peut etre qu il ya un truc a activé dans le server.

ViPHP
ViPHP | 1961 Messages

03 nov. 2006, 22:09

ça veux dire que tu as une erreur dans ta connexion (celle qu je t'ai fournie fonctionne) mais elle récupère la valeur dans $mysqli et non dans $link.

Fais les mêmes tests dans ton fichier 'connection.inc.php'
Deux choses sont infinies, l'Univers et la sottise humaine!!
Mais je ne suis pas sur de ce que j'affirme au sujet de l'Univers.

A. Einstein