stampare a video un campo del database

  • Creatore Discussione Creatore Discussione niko.87
  • Data di inizio Data di inizio

niko.87

Nuovo Utente
19 Dic 2008
12
0
0
salve a tutti, sono nuovo, e premetto che di php non sono un grandissimo esperto, lo sto imparando per necessità.. giungo al dunque..
Ho gia creato la registrazione, il login e il logout.. ho pure creato la tabella chiamata "utenti" e in questa tabella oltre ai campi necessari per la registrazione, ho creato un campo chiamato "stato", ke verrà modificato da me, ogni volta che io voglio, e per ogni utente registrato il contenuto del campo "stato" cambia.. io volevo sapere come fare a stampare a video per ogni utente il proprio stato?
in poche parole, il campo "stato" è lo stato di avanzamento di una pratica, che ogni utente quando effettua il login può controllare a che stato di avanzamento è la propria pratica.. spero di essere stato chiaro.. salve e grazie tante
 
si l'user_id gia c'era nella tabella, comunque non mi stampa niente a video.. grazie lo stesso
 
allora appena effettuo il login mi indirizza in una pagina, e all'interno di questa pagina c'è un link ke si chiama stato avanzamento pratica, ecco io lo inserito li il codice.. nn ditemi che ho fatto una cosa assurda... :dipser:
 
praticamento ho inserito solo quello che mi ha detto narc0x, e in piu le stringhe di connessione al db
 
Come giustamente dice michele.b26 perchè non posti il codice delle pagine coinvolte altrimenti sarà difficile darti una mano.
 
questo è il codice della pagina stato di avanzamento:

function getStato($id) {
$query_object = mysql_query("SELECT stato FROM utenti WHERE user_id='$id'");
$query_array = mysql_fetch_array($query_object);
echo $query_array[0];

questa è il codice del login:

if(isset($_SESSION['username']) && isset($_SESSION['password'])) {
header('Location: http://www.miosito.it);

}

if(isset($_POST['submit'])) {

if(!$_POST['username']) die("Errore: Devi inserire il tuo username per continuare");

if(!$_POST['password']) die("Errore: Devi inserire la tua password per continuare.");

if(isset($_POST['ricordami'])) {
$joined =''.$_POST['username'].'[]'.md5($_POST['password']).'';
setcookie($nome_cookie, $joined, time()+$scadenza, $percorso, $dominio);

}


$get_user = mysql_query("SELECT * FROM `utenti` WHERE username = '".$_POST['username']."' AND
user_password = '".md5($_POST['password'])."'");

$q = mysql_fetch_object($get_user);
if(!$q) die("Login fallito ! Verifica se hai inserito correttamente il tuo username e password.");
$_SESSION['logged_in'] = 1;
$_SESSION['username'] = $_POST['username'];
$_SESSION['password'] = $_POST['password'];
session_write_close();

header('Location: http://www.miosito.it');

vi serve altro?
 
questo è il codice della pagina stato di avanzamento:

function getStato($id) {
$query_object = mysql_query("SELECT stato FROM utenti WHERE user_id='$id'");
$query_array = mysql_fetch_array($query_object);
echo $query_array[0];

questa è il codice del login:

if(isset($_SESSION['username']) && isset($_SESSION['password'])) {
header('Location: http://www.miosito.it);

}

if(isset($_POST['submit'])) {

if(!$_POST['username']) die("Errore: Devi inserire il tuo username per continuare");

if(!$_POST['password']) die("Errore: Devi inserire la tua password per continuare.");

if(isset($_POST['ricordami'])) {
$joined =''.$_POST['username'].'[]'.md5($_POST['password']).'';
setcookie($nome_cookie, $joined, time()+$scadenza, $percorso, $dominio);

}


$get_user = mysql_query("SELECT * FROM `utenti` WHERE username = '".$_POST['username']."' AND
user_password = '".md5($_POST['password'])."'");

$q = mysql_fetch_object($get_user);
if(!$q) die("Login fallito ! Verifica se hai inserito correttamente il tuo username e password.");
$_SESSION['logged_in'] = 1;
$_SESSION['username'] = $_POST['username'];
$_SESSION['password'] = $_POST['password'];
session_write_close();

header('Location: http://www.miosito.it');

vi serve altro?

Beh, ma dov'è che richiami la funzione getStato? Qui vedo solo la definizione di essa.
 
Questa è la pagina di login dove viene controllata l'utenza che poi rimanda alla home page di miosito.it. A me interessa il codice della pagina nella quale hai intenzione di visualizzare lo stato.
 
ragazzi mi sto che sto facendo un po di confusione allora nella pagina dello stato di avanzamento, ho inserito solo questo codice:

function getStato($id) {
$query_object = mysql_query("SELECT stato FROM utenti WHERE user_id='$id'");
$query_array = mysql_fetch_array($query_object);
echo $query_array[0];

e mi sa che non è l'unico da inserire giusto.. scusate la confusione ma come ho scritto prima sono alle prime armi e non so gestire la sitazione.. grazie
 
Da qualche parte dovresti inserire la funzione getStato($id), esattamente dove vuoi che venga visualizzato lo stato dell'utente in questione e passargli come parametro l'id cercato.
 
allora io ho inserito la funzione getStato($id) nella pagina dell'avanzamento dello stato.. appena clicco sopra mi compare la pagina vuota e non la stringa all'interno del campo stato
 
No, aspetta, tu hai inserito la definizione della funzione, cioè

PHP:
function getStato($id){
[...]
}
ma per visualizzare effettivamente lo stato, devi aggiungere:

PHP:
getStato($id_utente);

dove vuoi che venga visualizzato.

L'$id_utente è l'id effettivo che è stato passato al login ad esempio come:

PHP:
if(isset($_POST['id'])){
    $id_utente = $_POST['id'];
}else{
    $id_utente = null;
}

Adesso non ricordo come passi i parametri, questo è un esempio, devi adattarlo al tuo caso.
 
Nella pagina visualizza stato

mettila dopo

PHP:
if(isset($_POS['submit'])){
[...]
}

Scrivi:

PHP:
getStato($_POST['username']);
 
questa è la pagina del login:

PHP:
if(isset($_SESSION['username']) && isset($_SESSION['password'])) {   
 
       header('Location: http://www.miosito);   
}    

if(isset($_POST['submit'])) {   

   if(!$_POST['username']) die("Errore: Devi inserire il tuo username per continuare");   
   
   if(!$_POST['password']) die("Errore: Devi inserire la tua password per continuare.");   
 
   if(isset($_POST['ricordami'])) {     
         $joined =''.$_POST['username'].'[]'.md5($_POST['password']).'';   
         setcookie($nome_cookie, $joined, time()+$scadenza, $percorso, $dominio); 
 
}  
         
   
$get_user = mysql_query("SELECT * FROM `utenti` WHERE username = '".$_POST['username']."' AND 
user_password = '".md5($_POST['password'])."'"); 

$q = mysql_fetch_object($get_user);   
    if(!$q) die("Login fallito ! Verifica se hai inserito correttamente il tuo username e password.");   

$_SESSION['logged_in'] = 1;
$_SESSION['username'] = $_POST['username'];    
$_SESSION['password'] = $_POST['password'];    
session_write_close();   
 
header('Location: http://www.miosito');   
 } else {

questa è la mia pagina avanzamento pratica:

PHP:
if(isset($_POST['id'])){ 
    $id_utente = $_POST['id']; 
}else{ 
    $id_utente = null; 
}  


function getStato($id) {


$query_object = mysql_query("SELECT stato FROM utenti WHERE user_id='$id'");


$query_array = mysql_fetch_array($query_object);

echo $query_array[0];
 }
 
getStato($_POST['id']); 

?>

dove sbaglio?
 
al posto di $_POST['id'] dovresti mettere $_POST['username'], il mio era un esempio. Poi ti da qualche messaggio di errore o proprio tutta la pagina bianca? In quest'ultimo caso sei sicuro di indirizzare alla pagina corretta?
 

Discussioni simili