2010-08-27 5 views
1

Quelqu'un peut-il m'aider avec mon script? Il est supposé lire les member_id de la session de l'utilisateur, trouver la ligne correspondante et renvoyer l'écho. Mais quand il s'exécute, il ne produit rien.PHP/MySQL - Obtenir une rangée d'un DB

<?php 

//Start session 
session_start(); 

//Make sure user is logged in 
require_once('auth.php'); 

//Include database connection details 
require_once('config.php'); 

//Connect to DB 
$link = mysql_connect(DB_HOST, DB_USER, DB_PASSWORD); 
if(!$link) { 
die('Failed to connect to server: ' . mysql_error()); 
} 

//Select database 
$db = mysql_select_db(DB_DATABASE); 
if(!$db) { 
die("Unable to select database"); 
} 

//Create Querys 
$query = "SELECT * FROM stats WHERE member_id='" . $_SESSION['SESS_MEMBER_ID'] . "' "; 
$result = mysql_query($query); 

//Gather the whole row into an array 
while($row = mysql_fetch_array($result, MYSQL_ASSOC)) 
{ 
    echo $row;  
} 

?> 

Répondre

3

déposer une echo mysql_num_rows($result); immédiatement après la ligne mysql_query, et voyez si vous avez des résultats renvoyés par la requête - je soupçonne que vous trouverez vous avez pas, auquel cas le SESS_MEMBER_ID n'est pas présent dans le table de statistiques.

+0

Opps, je l'ai compris. Erreur stupide. – user377419

1
  1. Utilisation PDO au lieu de mysql_*() fonctions
  2. $row est un tableau si l'écho il est inutile: PHP arrays, var_dump()
  3. Assurez-vous que la requête SQL retourne quoi que ce soit. Peut-être que a une valeur inattendue?
  4. Est-ce que le débogage de base à chaque fois que quelque chose va mal - tout déversement:

    var_dump($query); 
    var_dump($result); 
    var_dump($_SESSION); 
    

    Ou encore mieux: utiliser un vrai débogueur.

  5. Assurez-vous que toutes les erreurs possibles est affichée - PHP est un langage très étrange qui accepte les tons d'erreurs et peut encore fonctionner:

    error_reporting(-1); 
    ini_set('display_errors', 'on'); 
    

BTW: Quel est le point de préfixe SESS_ pour la session des variables?

Questions connexes