Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    [PHP][MYSQL]Problemi con una funzione

    Salve a tutti non riesco a far funzionare questa funzione:
    Codice PHP:
    <?
    session_start
    ();
    // ---------------------
    // include the
    // configuration file nome a pass per il db
    // ---------------------
    include_once ('include/config.inc.php');

    function 
    passdatiuser(){
    session_start();
    include 
    'config.inc.php';
    $query "SELECT* FROM  $user WHERE user_id  = '$PHPSESSID' LIMIT    1";
    $result mysql_query($query$db);
    $row mysql_fetch_array($result);

    $arr = array(user_id => "$row[user_id]",
                 
    user_name => "$row[user_name]",
                 
    user_date => "$row[user_date]",
                 
    user_data_chat => "$row[user_data_chat]",
                 
    user_data_locazione => "$row[user_data_locazione]",
                 
    user_location => "$row[user_location]"
                 
    );
    return 
    $arr;
    }
    $dati passdatiuser();
    echo 
    $dati[user_name];
    ?>
    la funzione dovrebbe passare i dati di un utente connnesso in un array.
    Quando richiamo la funzione non mi stampa niente!!
    dove è che sbaglio?

  2. #2
    1) c'è una ridondanza di session_start e inclusioni.. ma vabbè.. non è quello il problema...

    2) quando ce li metti i dati di sessione nella tabella? come gestisci le sessioni? che usi a fare session_start() se usi sessioni su database?
    Qui sta la risposta alla tua domanda....

    3) puoi fare semplicemente:
    return mysql_fetch_array($result);
    è già un array... solo che ha ridondanza di indici [associativi e numerici].. per cui ti conviene fare:
    return mysql_fetch_assoc($result);


  3. #3

    Re: [PHP][MYSQL]Problemi con una funzione

    [supersaibal]Originariamente inviato da Markus_2889
    Salve a tutti non riesco a far funzionare questa funzione:
    Codice PHP:
    <?
    ...
    $query "SELECT* FROM  $user WHERE user_id  = '$PHPSESSID' LIMIT    1";
    ...
    ?>
    la funzione dovrebbe passare i dati di un utente connnesso in un array.
    Quando richiamo la funzione non mi stampa niente!!
    dove è che sbaglio? [/supersaibal]
    Secondo me sbagli qui, WHERE user_id = '$PHPSESSID'
    Da dove prendi $PHPSESSID? Se è una variabile di sessione dovresti chiamarla $_SESSION['userid'], non so come si chiama e fare tipo così:

    $userid=$_SESSION['userid'];
    $query = "SELECT * FROM $user WHERE user_id = '$userid' LIMIT 1";
    Charlie Blown: un nome, un destino...

    Avatar Area!!!

  4. #4
    Codice PHP:
    <?
    session_start
    ();

    function 
    passdatiuser($id_sessione){
    include 
    'include/config.inc.php';
    $query "SELECT * FROM  $user WHERE user_id  = '$id_sessione' LIMIT    1";
    $result mysql_query($query$db);         
    return 
    $row mysql_fetch_assoc($result);
    }

    $dati passdatiuser($PHPSESSID);
    echo 
    $dati[user_name];

    ?>
    Ora funziona!
    Gli errori sono due:
    -Il percorso per il includere il file era sbagliato e la variabile ($user) era vuota.
    -Charlie avevi ragione il problema era dove dicevi te adesso come vedi la variabie gliele passo.
    grazie 1000 per l'aiuto!

    Il PHPSESSID è identita di sessione la utilizzo per ricavare la riga con i dati dell'utente.
    I dati nella tabella li inserisco nel login.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.