Visualizzazione risultati 1 fino 16 di 16

Discussione: [php] errore variabile $_get

  1. #1
    Guest

    Predefinito [php] errore variabile $_get

    salve a tuttio io ho questo script che pero nn funziona e il problema sembra essere nel fatto che nn trova le variabili $_GET
    Codice PHP:
    <?php
    // Includo la connessione al database
    require('../area_privata/config.php');

    // Se non è stata definita la variabile manda l'utente alla homepage
    if(!isset($_SESSION['login']))
    {
    header('Location: ../area_privata/index.php');
    exit;
    }
    //mdf=modifica da effettuare

    if($_GET['mdf']="visualizzare"){
    mysql_query('INSERT INTO commenti WHEN id='.$_GET['id'].' SET visualizzare=si');
    }
    if(
    $_GET['mdf']="non_visualizzare"){
    mysql_query('INSERT INTO commenti WHEN id='.$_GET['id'].' SET visualizzare=no');
    }
    if(
    $_GET['mdf']="Eliminare"){
    mysql_query('DELETE FROM commenti WHEN id='.$_GET['id'].'');
    }
    ?>
    <html>
    <head>
    </head>
    <body>
    <?php
    echo $_SESSION['userloggato']."&nbsp;<a href=\"/area_privata/logout.php\">Logout</a>" ;

    $richiesta = mysql_query('SELECT * FROM commenti WHERE visualizzare="si" ORDER BY id DESC');
    mysql_query($richiesta);
    if(
    $richiesta) {
    echo
    '<table width="80%" border="1px">';
    while (
    $testovisualizzato = mysql_fetch_assoc($richiesta)){
    if(
    $testovisualizzato['visualizzare']='si'){
    $mdf='non_visualizzare';
    }
    else{
    $mdf='visualizzare';
    }
    echo
    '<tr>';
    echo
    '<td>Data di inserimento:' . $testovisualizzato['data'] .'<a href=/area_privata/commenti.php?id='.$testovisualizzato['id'].'&mdf='.$mdf.'>'.$mdf.'</a></td>';
    echo
    '</tr>';
    echo
    '<tr>';
    echo
    '<td>Commento:<br />';
    echo
    '<p>' . $testovisualizzato['testo'] . '</p></td>';
    echo
    '</tr>';
    }
    echo
    '</table>';}
    ?>
    </body>
    </html>
    Ultima modifica di ciberioegiro : 07-11-2010 alle ore 19.22.07

  2. #2
    L'avatar di sevenjeak
    sevenjeak non è connesso AlterGuru
    Data registrazione
    25-10-2007
    Residenza
    Roma
    Messaggi
    1,769

    Predefinito

    Bhe.. Da quello che so io all'interno delle condizione si usa il simbolo identico ( == ) al posto dell'uguale ( = ).

    Uguale serve solamente per inizializzare ( dare il valore iniziale ) a una variabile o altro, mentre per confrontare la variabile si usa il simbolo identico ( == )

    Per ora non ho visto nessun altro errore, eccetto che quello, ti farò sapere se ne trovo altri.

    EDIT:

    Il resto del codice sembra essere giusto, cmq, la prossima volta potresti scrivere l'errore che ti stampa?
    Ultima modifica di sevenjeak : 07-11-2010 alle ore 19.28.57

    Sevenjeak
    Software developer and much more

  3. #3
    karl94 non è connesso Staff AV
    Data registrazione
    03-10-2005
    Messaggi
    17,745

    Predefinito

    @sevenjeak, quello non è un'errore, è un'assegnazione all'interno dell'espressione condizionale del while, non è raro trovare una simile espressione.

    @ciberioegiro: hai provato a inserire un semplice
    Codice PHP:
    echo $_GET['id'];
    per verificare se questo è il problema?

  4. #4
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,761

    Predefinito

    Citazione Originalmente inviato da karl94 Visualizza messaggio
    @sevenjeak, quello non è un'errore, è un'assegnazione all'interno dell'espressione condizionale del while, non è raro trovare una simile espressione.
    Non credo si riferiva al while, ma agli if

    Codice PHP:
    if($_GET['mdf']="visualizzare"){
    mysql_query('INSERT INTO commenti WHEN id='.$_GET['id'].' SET visualizzare=si');
    }
    if(
    $_GET['mdf']="non_visualizzare"){
    mysql_query('INSERT INTO commenti WHEN id='.$_GET['id'].' SET visualizzare=no');
    }
    if(
    $_GET['mdf']="Eliminare"){
    mysql_query('DELETE FROM commenti WHEN id='.$_GET['id'].'');
    }
    Ciao!

  5. #5
    karl94 non è connesso Staff AV
    Data registrazione
    03-10-2005
    Messaggi
    17,745

    Predefinito

    Citazione Originalmente inviato da alemoppo Visualizza messaggio
    Non credo si riferiva al while, ma agli if

    Ciao!
    Pardon, come non detto. Scritti così quegli if saranno tutti sempre veri, l'errore è quello.

  6. #6
    L'avatar di sevenjeak
    sevenjeak non è connesso AlterGuru
    Data registrazione
    25-10-2007
    Residenza
    Roma
    Messaggi
    1,769

    Predefinito

    Citazione Originalmente inviato da karl94 Visualizza messaggio
    @sevenjeak, quello non è un'errore, è un'assegnazione all'interno dell'espressione condizionale del while, non è raro trovare una simile espressione.
    Si si, quello lo so, infatti la sintassi che ha usato nel while la utilizzo anch'io quando mi occorre.

    Cmq, hai risolto ora?

    Sevenjeak
    Software developer and much more

  7. #7
    Guest

    Predefinito

    intanto grazie a tutti cmq no, nn ho risolto cmq se aggiungo un echo $_getid come segue nn mi stampa nessuna variabile
    Codice PHP:
    <?php
    // Includo la connessione al database
    require('../area_privata/config.php');

    // Se non è stata definita la variabile manda l'utente alla homepage
    if(!isset($_SESSION['login']))
    {
    header('Location: ../area_privata/index.php');
    exit;
    }
    //mdf=modifica da effettuare

    echo ($_get['id']);

    if(
    $_GET['mdf']="visualizzare"){
    mysql_query('INSERT INTO commenti WHEN id='.$_GET['id'].' SET visualizzare=si');
    }
    if(
    $_GET['mdf']="non_visualizzare"){
    mysql_query('INSERT INTO commenti WHEN id='.$_GET['id'].' SET visualizzare=no');
    }
    if(
    $_GET['mdf']="Eliminare"){
    mysql_query('DELETE FROM commenti WHEN id='.$_GET['id'].'');
    }

    echo
    $_SESSION['userloggato']."&nbsp;<a href=\"/area_privata/logout.php\">Logout</a>" ;

    $richiesta = mysql_query('SELECT * FROM commenti WHERE visualizzare="si" ORDER BY id DESC');
    mysql_query($richiesta);
    if(
    $richiesta) {
    echo
    '<table width="80%" border="1px">';
    while (
    $testovisualizzato = mysql_fetch_assoc($richiesta)){
    if(
    $testovisualizzato['visualizzare']='si'){
    $mdf='non_visualizzare';
    }
    else{
    $mdf='visualizzare';
    }
    echo
    '<tr>';
    echo
    '<td>Data di inserimento:' . $testovisualizzato['data'] .'<a href=/area_privata/commenti.php?id='.$testovisualizzato['id'].'&mdf='.$mdf.'>'.$mdf.'</a></td>';
    echo
    '</tr>';
    echo
    '<tr>';
    echo
    '<td>Commento:<br />';
    echo
    '<p>' . $testovisualizzato['testo'] . '</p></td>';
    echo
    '</tr>';
    }
    echo
    '</table>';}






    ?>
    questo è uno script che mi servibbe per gestire i commenti ovvero una persona scrive un commento che viene inserito nel db io da questa pagina dovrei essere in grado di scegliere se farlo visualizzare o no oppure cancellarlo ;nn so se sono stato abbastanza chiaro grazie cmq

  8. #8
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,761

    Predefinito

    non hai risolto perché non l'hai corretto ... in pratica, sostituisci

    Codice PHP:
    if($_GET['mdf']="visualizzare"){
    mysql_query('INSERT INTO commenti WHEN id='.$_GET['id'].' SET visualizzare=si');
    }
    if(
    $_GET['mdf']="non_visualizzare"){
    mysql_query('INSERT INTO commenti WHEN id='.$_GET['id'].' SET visualizzare=no');
    }
    if(
    $_GET['mdf']="Eliminare"){
    mysql_query('DELETE FROM commenti WHEN id='.$_GET['id'].'');
    }
    con

    Codice PHP:
    if($_GET['mdf']=="visualizzare"){
    mysql_query('INSERT INTO commenti WHEN id='.$_GET['id'].' SET visualizzare=si');
    }
    if(
    $_GET['mdf']=="non_visualizzare"){
    mysql_query('INSERT INTO commenti WHEN id='.$_GET['id'].' SET visualizzare=no');
    }
    if(
    $_GET['mdf']=="Eliminare"){
    mysql_query('DELETE FROM commenti WHEN id='.$_GET['id'].'');
    }
    ..l'operatore di identità è "==", mentre il "=" è l'operatore di assegnazione.

    Ciao!
    Ultima modifica di alemoppo : 08-11-2010 alle ore 01.59.57

  9. #9
    Guest

    Predefinito

    ho capito che il problema è solo nell'invio della variabile get anche se ancora nn ho trovato l'errore

  10. #10
    Guest

    Predefinito

    no quello lo ho gia cambiato ma nn fa lo stesso

  11. #11
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,761

    Predefinito

    Citazione Originalmente inviato da ciberioegiro Visualizza messaggio
    no quello lo ho gia cambiato ma nn fa lo stesso
    non ho capito cosa "non fa": le query le esergue sempre? non ne esegue enssuna? da qualche errore? --> Cosa succede?

    Ciao!

  12. #12
    Guest

    Predefinito

    il problema nn sono le query sql. quelle sono giuste ma nn bfunzionano perche nn riceva la variabile get verifica tu stesso vai qui
    nome utente pippo password pippo

  13. #13
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,761

    Predefinito

    beh, mi dice che son errati, perché giustamente il tuo form non invia i dati via GET ma via POST:

    Codice HTML:
    <form action="" method="post">


    Ciao!

    EDIT:

    ho provato ad inviare i dati tramite GET ed effettivamente ha funzionato...
    Ultima modifica di alemoppo : 08-11-2010 alle ore 18.25.15

  14. #14
    Guest

    Predefinito

    scusa nn mi sono spiegato io ti ho dato il link ,te dovevi effettuare l'accesso poi nella pagina che trovavi cera un link con scitto commenti quella è la pagina che nn funziona

  15. #15
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,761

    Predefinito

    beh... allora non vedo perché il problema sia nel passaggio dei parametri.... quelli funzionano

    ...il problema, invece, son proprio le query: sostituisci "WHEN" con "WHERE"


    ..se dici che i parametri non arrivano perché questo:
    Codice PHP:
    echo ($_get['id']);
    non produce alcun output, sappi che $_get non è $_GET

    Ciao!
    Ultima modifica di alemoppo : 09-11-2010 alle ore 18.18.35

  16. #16
    Guest

    Predefinito

    risolto il promea era come dicevi te @alemoppo $_GET non è $_get

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •