Probleme connection BD

Petit nouveau ! | 6 Messages

30 mars 2006, 20:14

j`ai installe un script pour une galerie et tout a bien fontionne creation des tables parametres de connection etc..
mais quand je veux enregistrer un membre
Voila le massage d`erreur que j`ai:
Warning: mysql_result(): Unable to jump to row 0 on MySQL result index 4
Merci de votre aide

Mammouth du PHP | 19672 Messages

30 mars 2006, 20:19

Fais donc voir le code utilisé, on ne devinera pas où est l'erreur.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Petit nouveau ! | 6 Messages

30 mars 2006, 20:28

Fais donc voir le code utilisé, on ne devinera pas où est l'erreur.
Voila ce que j`ai si tu as besoin d`autres renseignements demande je suis completement bloque avec ca
Merci
<?
include("config.php");
	
	session_start();
	if(!session_is_registered('username') ||!session_is_registered('smartid'))
    	{
    	viewheader();
    	echo"<center>-- Vous ne pouvez pas accèder à cette zone --<br>";
    	echo"<b>L'accès est réservé aux membres</b><br>";
    	echo"<a href='register.php'>Enregistrement</a></center>";
    	echo"<a href='index.php'>Connexion</a></center>";
    	viewfooter();
    	exit;
    	}
	
	viewheader();
	db_connect();
	$req = "SELECT * FROM $dbtable WHERE id='$smartid'";
	$res = mysql_query($req);

	$username = mysql_result($res,$i,"username");
	$email = mysql_result($res,$i,"email"); 
	$url = mysql_result($res,$i,"url");
	$niveau = mysql_result($res,$i,"niveau"); 
	$ville = mysql_result($res,$i,"ville"); 
	$photo = mysql_result($res,$i,"photo"); 
	$bouton = mysql_result($res,$i,"bouton");
	$clicks = mysql_result($res,$i,"clicks");
	$ip = mysql_result($res,$i,"ip");
	$date = mysql_result($res,$i,"date_reg");
	$annee = date("Y", $date);
	$mois = date("m", $date);
	$jour = date("d", $date);
	$heures = date("H", $date);
	$minutes = date("i", $date);
	$date = $jour."/".$mois."/".$annee;
	
	?>

Mammouth du PHP | 19672 Messages

30 mars 2006, 20:36

Essaye avec une concaténation propre:
$req = "SELECT * FROM ". $dbtable ." WHERE id='". $smartid ."'"; 
Ensuite, ajoute un echo() de ta requête pour vérifier qu'elle est correcte, copie-là et essaye lâ directement dans PHPMyAdmin pour être sûr qu'elle retourne le résultat attendu
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Petit nouveau ! | 6 Messages

30 mars 2006, 20:58

Essaye avec une concaténation propre:
$req = "SELECT * FROM ". $dbtable ." WHERE id='". $smartid ."'"; 
Ensuite, ajoute un echo() de ta requête pour vérifier qu'elle est correcte, copie-là et essaye lâ directement dans PHPMyAdmin pour être sûr qu'elle retourne le résultat attendu
J `ai oublie de te preciser que je ne suis pas un virtuose du php je mets ca ou et j`ajoute l`echo ou si tu pouvais me l`indiquer ca m`eviterai de faire des betises
Merci

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

30 mars 2006, 21:19

je ne suis pas un virtuose du php je mets ca ou et j`ajoute l`echo ou
:shock:

Tu as déjà une ligne avec une requête il suffit donc de remplacer la ligne par celle donne par Cyrano et le echo juste après la ligne requête.


Mais il y a fort a parier que la requête ne renvoie rien... aucune ligne de donnée qui correspond aux conditions et tu essaie de lire des données avec mysql_result()

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

Petit nouveau ! | 6 Messages

30 mars 2006, 21:44

je ne suis pas un virtuose du php je mets ca ou et j`ajoute l`echo ou
:shock:

Tu as déjà une ligne avec une requête il suffit donc de remplacer la ligne par celle donne par Cyrano et le echo juste après la ligne requête.


Mais il y a fort a parier que la requête ne renvoie rien... aucune ligne de donnée qui correspond aux conditions et tu essaie de lire des données avec mysql_result()
Voila ce que ca renvoie mais la page s`affiche maintenant mais il y a ca dessus
Warning: mysql_query(): Access denied for user 'remi'@'amanda.nfrance.com' (using password: NO) in /home/eq43463/html/galerie/membre/membres.php on line 18

Warning: mysql_query(): A link to the server could not be established in /home/eq43463/html/galerie/membre/membres.php on line 18

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home/eq43463/html/galerie/membre/membres.php on line 20
Aucun résultat.

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

30 mars 2006, 21:52

vérifis tes identifiants de connexion "utilisateur", "hote", ..

si tu est en local tu devrai avoir
"root" et "localhost"

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

Petit nouveau ! | 6 Messages

30 mars 2006, 22:13

vérifis tes identifiants de connexion "utilisateur", "hote", ..

si tu est en local tu devrai avoir
"root" et "localhost"
Non je l`installe directement sur mon serveur et les codes de connections sont bons je viens de les reverifier si tu veux faire un petit tour sur le site c`est www.bonus-immo.com/galerie et c`est quand on veut entrer un membre que ca merde :-)j`ai ca dans le config
<?

$host="localhost"; // votre serveur
$login="xxxx"; // votre identifiant
$pass="xxxx"; // votre mot de passe
$base="xxxx"; // le nom de votre base MySQL

$table="Web_Galerie";
$table_categories="Web_Categories";
$table_commentaires="Web_Commentaires";

?>

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

30 mars 2006, 22:47

j'vois pas d'erreur :-k

mais c'est étonnant que tu n'as pas de passe

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

Petit nouveau ! | 6 Messages

30 mars 2006, 23:17

j'vois pas d'erreur :-k

mais c'est étonnant que tu n'as pas de passe

Je viens de reinstalle le script en entier avec la ligne que tu m`as donne je ne sais pas si tu peux aller voir le site http://www.bonus-immo.com/galerie/galerie/ et c`est quand on veut rentrer un membre que ca merde si tu veux autre chose demande moi :-)

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

31 mars 2006, 00:33

si tu veux autre chose demande moi :-)
Les numéros du Loto ? \:D/
Le nom du prochain président de la république :D

Je comprend pas... il faut s'inscrire pour voir ?

En tout cas je sais pas ce que tu as modifié mais le problème de base pouvais être contourné avec mysql_num_rows():
$req = "SELECT * FROM $dbtable WHERE id='$smartid'";
    $res = mysql_query($req);

if (mysql_num_rows($res) > 0)
{
    $username = mysql_result($res,$i,"username");
    $email = mysql_result($res,$i,"email");
    $url = mysql_result($res,$i,"url");
    $niveau = mysql_result($res,$i,"niveau");
    $ville = mysql_result($res,$i,"ville");
    $photo = mysql_result($res,$i,"photo");
    $bouton = mysql_result($res,$i,"bouton");
    $clicks = mysql_result($res,$i,"clicks");
    $ip = mysql_result($res,$i,"ip");
    $date = mysql_result($res,$i,"date_reg");
    $annee = date("Y", $date);
    $mois = date("m", $date);
    $jour = date("d", $date);
    $heures = date("H", $date);
    $minutes = date("i", $date);
    $date = $jour."/".$mois."/".$annee; 
}

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

Invité
Invité n'ayant pas de compte PHPfrance

31 mars 2006, 00:59

si tu veux autre chose demande moi :-)
Les numéros du Loto ? \:D/
Le nom du prochain président de la république :D

Je comprend pas... il faut s'inscrire pour voir ?

En tout cas je sais pas ce que tu as modifié mais le problème de base pouvais être contourné avec mysql_num_rows():
$req = "SELECT * FROM $dbtable WHERE id='$smartid'";
    $res = mysql_query($req);

if (mysql_num_rows($res) > 0)
{
    $username = mysql_result($res,$i,"username");
    $email = mysql_result($res,$i,"email");
    $url = mysql_result($res,$i,"url");
    $niveau = mysql_result($res,$i,"niveau");
    $ville = mysql_result($res,$i,"ville");
    $photo = mysql_result($res,$i,"photo");
    $bouton = mysql_result($res,$i,"bouton");
    $clicks = mysql_result($res,$i,"clicks");
    $ip = mysql_result($res,$i,"ip");
    $date = mysql_result($res,$i,"date_reg");
    $annee = date("Y", $date);
    $mois = date("m", $date);
    $jour = date("d", $date);
    $heures = date("H", $date);
    $minutes = date("i", $date);
    $date = $jour."/".$mois."/".$annee; 
}
Les numeros du lot je n`ai pas pour le prochain president ca commence par S.....
enfin pour le script je crois que ca marche je n`ai plus de message d`erreur par contre il enregistre toujours le meme nom meme quand j`en nomme un nouveau je vais refaire les tables et je te tiens au courant
Merci beaucoup @+

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

31 mars 2006, 10:18

par contre il enregistre toujours le meme nom meme quand j`en nomme un nouveau j
ça ce n'est plus vraiment le même problème.

Ici on a une requete de séléction et non d'insertion on peut donc considérer ce sujet [Résolu] ?

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute