Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 14

Discussione: Problema Variabile

  1. #1
    Utente di HTML.it
    Registrato dal
    May 2004
    Messaggi
    82

    Problema Variabile

    Stò facendo uno script che permette di lasciare dei commenti ad ogni messaggio di un blog.

    Per ogni messaggio del blog, utilizzo il suo id nel database per assegnare lo stesso valore ad una variabile $chiave che passo ad una pagina dei commenti attraverso la query string..

    in breve ogni messaggio ha un link "Commenti" che collega alla pagina "commenti.php?chiave=$id" con $id=all'id che il messaggio ha nel db..

    fin qua non ci sono problemi, la variabile arriva all'altra pagina ma quando devo inserire la $chiave nel database.. non mi da alcun errore ma se vado a controllare per ogni commento inserito da qualunque messaggio il valore di $chiave è sempre= 0...

    Non capisco proprio il perchè, sapete aiutarmi?

  2. #2
    posta qualche riga di codice altrimenti è difficile aiutarti...
    « Se nella prima mezz'ora non capisci chi è il pollo, allora il pollo sei tu. » [Thomas "Amarillo Slim" Preston, campione del mondo di poker]

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2004
    Messaggi
    82
    allora:

    Pg Principale(con i messaggi):

    Commenti
    Con questo mando alla pagina commenti la variabile chiave con il valore di id del messaggio selezionato per il commento..


    Pg per la lettura e l'invio dei commenti:

    $chiave=$HTTP_GET_VARS['chiave'];
    Questo penso sia superfluo ma per sicurezza riconfermo il valore di $chiave..

    prendo da un form altri variabili ($utente, $testo, $gg, $ora)

    infine invio tutto al db

    comment_to_db($chiave, $utente, $testo, $gg, $ora);

    La funzione commenti to db è la seguente:

    codice:
    function comment_to_db($chiave, $utente, $testo, $gg, $ora)
    	{
    	$id3=mysql_connect("localhost","","") or die("Errore nella connessione a MySql: ".mysql_error());
    mysql_select_db("commenti", $id3) or die ("Errore nella selezione del db: ".mysql_error());
    
    $q3="insert into commenti (chiave, utente, testo, giorno, ora) values ('$chiave', '$utente', '$testo', '$gg', '$ora');";
    mysql_query($q3, $id3) or die ("Errore nell' inserimento del commento nel Database: ".mysql_error());
    print "Commento Inserito!!
    ";
    print "Torna alla Home";
    }

  4. #4
    codice:
    function comment_to_db($chiave, $utente, $testo, $gg, $ora)
    	{
    die ("chiave: ".$chiave);	
    $id3=mysql_connect("localhost","","") or die("Errore nella connessione a MySql: ".mysql_error());
    mysql_select_db("commenti", $id3) or die ("Errore nella selezione del db: ".mysql_error());
    
    	$q3="insert into commenti (chiave, utente, testo, giorno, ora) values ('$chiave', '$utente', '$testo', '$gg', '$ora');";
    	mysql_query($q3, $id3) or die ("Errore nell' inserimento del commento nel Database: ".mysql_error());
        print "Commento Inserito!!
    ";
    	print "Torna alla Home";
    	}
    prova ad aggiungere questa cosa e vedi se a video ti riporta il valore giusto della chiave oppure 0
    « Se nella prima mezz'ora non capisci chi è il pollo, allora il pollo sei tu. » [Thomas "Amarillo Slim" Preston, campione del mondo di poker]

  5. #5
    Utente di HTML.it
    Registrato dal
    May 2004
    Messaggi
    82
    °_°""

    non riporta nulla mi da:

    chiave:


    Boh, provo a postare tutto il codice così magari è + facile per voi:

    codice:
    <?php
    
    include ("functions.php");
    include ("database/db_commenti_on.php");
    
    $chiave=$HTTP_GET_VARS['chiave'];
    global $chiave;
    
    //Dichiaro due variabili che registrano il giorno e l'ora
    $gg=date('d-m-Y');
    $ora=date('H:i a');
    
    
    //Estraggo dal database tutti i messaggi dal più nuovo al più vecchio con la chiave del commento selezionato
    $query=mysql_query("select * from commenti order by id desc where chiave='$chiave';");
    
    
    //Imposto un ciclo che contunua finchè ci sono record e che impagina i messaggi
    if (!$query){
    	print "Non ci sono commenti, vuoi inserire tu il primo?";
    } else {
    		while ($mex=mysql_fetch_array($query)){
    		print "<table width='402' height='110' border='1' bordercolor='#ECD9C4' bgcolor='#FFFFFF'>";
    		print "<tr bgcolor='#FDFBF8'>";
    		print "<td width='296' height='14'><div align='left'>Scritto da:".$mex['utente']." Scritto il:".$mex['giorno']." Alle ore:".$mex['ora']."</div></td></tr>";
    		print "<tr bgcolor='#FDFBF8'><td height='88' colspan='2'><div align='center'>".$mex['testo']."</div></td></tr>";
    		print "</table>";
    		print "
    
    </p>";
    		}
    }
      
    //Form per l'aggiunta di nuovi
    comment_form();	
    
    
    //Definisco alcune variabili da inviare successivamente al DB
    $utente=$HTTP_POST_VARS['utente'];
    $testo=$HTTP_POST_VARS['testo'];
    
    
    //Controllo che siano stati completati entrambi i campi e inserisce il messaggio nel DB
    if ((!$utente) || (!$testo)){
    	print "Perfavore compila tutti i campi!";
    	} else {
    	comment_to_db($chiave, $utente, $testo, $gg, $ora);
    	}
    
    ?>

  6. #6
    codice:
    <?php
    
    include ("functions.php");
    include ("database/db_commenti_on.php");
    
    $chiave=$HTTP_GET_VARS['chiave'];
    global $chiave;
    
    die("chiave: ".$chiave);
    
    //Dichiaro due variabili che registrano il giorno e l'ora
    $gg=date('d-m-Y');
    $ora=date('H:i a');
    
    
    //Estraggo dal database tutti i messaggi dal più nuovo al più vecchio con la chiave del commento selezionato
    $query=mysql_query("select * from commenti order by id desc where chiave='$chiave';");
    
    
    //Imposto un ciclo che contunua finchè ci sono record e che impagina i messaggi
    if (!$query){
    	print "Non ci sono commenti, vuoi inserire tu il primo?";
    } else {
    		while ($mex=mysql_fetch_array($query)){
    		print "<table width='402' height='110' border='1' bordercolor='#ECD9C4' bgcolor='#FFFFFF'>";
    		print "<tr bgcolor='#FDFBF8'>";
    		print "<td width='296' height='14'><div align='left'>Scritto da:".$mex['utente']." Scritto il:".$mex['giorno']." Alle ore:".$mex['ora']."</div></td></tr>";
    		print "<tr bgcolor='#FDFBF8'><td height='88' colspan='2'><div align='center'>".$mex['testo']."</div></td></tr>";
    		print "</table>";
    		print "
    
    </p>";
    		}
    }
      
    //Form per l'aggiunta di nuovi
    comment_form();	
    
    
    //Definisco alcune variabili da inviare successivamente al DB
    $utente=$HTTP_POST_VARS['utente'];
    $testo=$HTTP_POST_VARS['testo'];
    
    
    //Controllo che siano stati completati entrambi i campi e inserisce il messaggio nel DB
    if ((!$utente) || (!$testo)){
    	print "Perfavore compila tutti i campi!";
    	} else {
    	comment_to_db($chiave, $utente, $testo, $gg, $ora);
    	}
    
    ?>
    vedi un po' se ti stampa il valore...
    « Se nella prima mezz'ora non capisci chi è il pollo, allora il pollo sei tu. » [Thomas "Amarillo Slim" Preston, campione del mondo di poker]

  7. #7
    Utente di HTML.it
    Registrato dal
    May 2004
    Messaggi
    82
    si questa volta me lo stampa °_°

    allora la variabile non raggiunge la funzione comment_to_db


  8. #8
    esatto, il perchè però non te lo so dire...
    « Se nella prima mezz'ora non capisci chi è il pollo, allora il pollo sei tu. » [Thomas "Amarillo Slim" Preston, campione del mondo di poker]

  9. #9
    Utente di HTML.it
    Registrato dal
    May 2004
    Messaggi
    82
    adesso ho provato a fare il die anche con le altre variabili ed arriavano tutte tranne $chiave

    codice:
    function comment_to_db($chiave, $utente, $testo, $gg, $ora)
    	{
    die ("chiave: ".$chiave);	
    $id3=mysql_connect("localhost","","") or die("Errore nella connessione a MySql: ".mysql_error());
    mysql_select_db("commenti", $id3) or die ("Errore nella selezione del db: ".mysql_error());
    
    	$q3="insert into commenti (chiave, utente, testo, giorno, ora) values ('$chiave', '$utente', '$testo', '$gg', '$ora');";
    	mysql_query($q3, $id3) or die ("Errore nell' inserimento del commento nel Database: ".mysql_error());
        print "Commento Inserito!!
    ";
    	print "Torna alla Home";
    	}
    Cosa potrebbe essere

  10. #10
    prova a commentare la riga:
    codice:
    global $chiave;
    e vedi se arriva...
    « Se nella prima mezz'ora non capisci chi è il pollo, allora il pollo sei tu. » [Thomas "Amarillo Slim" Preston, campione del mondo di poker]

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 © 2025 vBulletin Solutions, Inc. All rights reserved.