Pagina 1 di 2 12 UltimoUltimo
Visualizzazione risultati 1 fino 30 di 56

Discussione: Aiuto syntax error

  1. #1
    Guest

    Exclamation Aiuto syntax error

    Salve a tutti;
    in una pagina di validazione di alcuni dati, al momento dell'invio mi viene restituito l'errore

    Parse error: syntax error, unexpected T_STRING in /membri/programmerscommunity/confermareg.php on line 10

    Relativo alla linea:

    Codice PHP:
    die(Query error: ' .mysql_error()');
    Il problema è che non riesco proprio a capire dove sia l'errore. Come devo correggere?

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

    Predefinito

    Non hai messo gli apici nella stringa, ma li hai messi alla funzione mysql_error().

    Ciao!

  3. #3
    Guest

    Predefinito

    Codice PHP:
    die('Query error: .mysql_error()');
    Ma non cambia nulla; rimane sempre lo stesso errore

  4. #4
    Guest

    Predefinito

    Citazione Originalmente inviato da readyschool Visualizza messaggio
    Codice PHP:
    die('Query error: .mysql_error()');
    Ma non cambia nulla; rimane sempre lo stesso errore
    Perché è SOLO la stringa che va tra gli apici:
    Codice PHP:
    die('Query error:'.mysql_error());

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

    Predefinito

    Quel codice non è sintatticamente errato, se visualizzi ancora un messaggio di errore assicurati di svuotare la cache, comunque non ti mostrerebbe l'errore MySQL, il codice corretto è
    Codice PHP:
    die('Query error: '.mysql_error());
    Ops, preceduto, però lascio il messaggio perché un po' più completo.
    Ultima modifica di karl94 : 14-03-2014 alle ore 22.26.12

  6. #6
    Guest

    Predefinito

    Ho corretto la linea, svuotato la cache, ma l'errore persiste.

    Codice PHP:
    die('Query error:'mysql_error());
    Ultima modifica di alemoppo : 14-03-2014 alle ore 23.39.04 Motivo: +tag [php]

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

    Predefinito

    Quel codice non è proprio come te lo hanno scritto. Dovresti darti una guardata a come si concatenano le stringhe in PHP.

    Ciao!

  8. #8
    Guest

    Predefinito

    Guarda, ho provato a rivederlo in tutti i modi, ma nn riesco proprio a venirne a capo...

    Ecco qui il codice completo; ho provato a modificarlo così:
    Codice PHP:
    <?php
    session_start
    ();
    require_once(
    'mysqlconn.php');
    mysql_select_db($database, $utenti);
    $bSuccesso = true;
    $username = $_GET['username'];
    $code = $_GET['code'];
    $sql = mysql_query("SELECT * FROM utenti WHERE username='".$username."' ") or die(mysql_error());
    while (
    $row = mysql_fetch_array($sql)) {
    if (
    $row['code'] == $code) {
    $verDB = true;
    $verifica = mysql_query("UPDATE utenti SET verifica = true WHERE username = '".$username."' ") or die (mysql_error());
    ?>
    <html><head>
    <?php
    echo
    '<script type="text/javascript">
    function doRedirect() {
    window.open(\'index.php'
    ,\'_top\');
    }
    window.setTimeout("doRedirect()", 15);
    </script>'
    ; ?>
    </head>
    <body></body></html> <?php
    }
    }
    ?>
    Ma il risultato è sempre:
    Parse error: syntax error, unexpected T_STRING in /membri/programmerscommunity/confermareg.php on line 10

    Nonostante con quest'ultima modifica il numero della linea sia cambiato.

    Provare per credere: http://www.programmerscommunity.alte...f7763e9d625646

  9. #9
    Guest

    Predefinito

    Non ho capito...
    L'errore si riferisci all'if adesso?

  10. #10
    Guest

    Predefinito

    Sembra di si, anche dopo questa modifica l'errore sembra provenire dalla riga 10; può essere un problema sul server altervista che fa si che segnali erroneamente l'errore?

  11. #11
    L'avatar di javascripter
    javascripter non è connesso Moderatore
    Data registrazione
    14-02-2010
    Messaggi
    1,114

    Predefinito

    La parte interessata è questa:
    Codice PHP:
    <?php
    echo
    '<script type="text/javascript">
    function doRedirect() {
    window.open(\'index.php'
    ,\'_top\');
    }
    window.setTimeout("doRedirect()", 15);
    </script>'
    ; ?>
    L'errore è dovuto al mancato escape dell'apice dopo index.php.

    Comunque, dato che è html statico, non ha senso farlo stampare a php (con echo).
    Puoi benissimo inserirlo al di fuori dei tag <?php ?>

  12. #12
    Guest

    Predefinito

    L'ho tolto da apici, ma non cambia nulla; secondo me non è questa la stringa
    Codice HTML:
    <script type="text/javascript">
    				function doRedirect() {
    				window.open(\'index.php',\'_top\');
    					}
    				window.setTimeout("doRedirect()", 15);
    			</script>
    Ultima modifica di readyschool : 15-03-2014 alle ore 22.19.39

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

    Predefinito

    Se non utilizzi PHP per stampare quella stringa, devi eliminare tutti gli escape. Comunque riposta il codice il codice "completo" ed "aggiornato" che stai utilizzando.

    Ciao!

  14. #14
    Guest

    Predefinito

    Codice PHP:
    <?php
    session_start
    ();
    require_once(
    'mysqlconn.php');
    mysql_select_db($database, $utenti);
    $bSuccesso = true;
    $username = $_GET['username'];
    $code = $_GET['code'];
    $sql = mysql_query("SELECT * FROM utenti WHERE username='".$username."' ") or die(mysql_error());
    while (
    $row = mysql_fetch_array($sql)) {
    if (
    $row['code'] == $code) {
    $verDB = true;
    $verifica = mysql_query("UPDATE utenti SET verifica = true WHERE username = '".$username."' ") or die (mysql_error());
    ?>
    <html><head>
    <script type="text/javascript">
    function doRedirect() {
    window.open(\index.php,\_top\);
    }
    window.setTimeout(doRedirect(), 15);
    </script>
    </head>
    <body></body></html> <?php
    }
    }
    ?>

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

    Predefinito

    Guardando velocemente, a livello di PHP non noto errori di sintassi. Sei sicuro di aver aggiornato il file? Prova magari ad impostare cloudflare in modalità svilippo, o comunque eliminare la cache.

    Lato "javascript", dovresti aggiungere gli apici invece dei backslash:

    Codice:
    window.open('index.php','_top');
    Ciao!

  16. #16
    Guest

    Predefinito

    Ho controllato ed il file è effettivamente aggiornato; ho svuotato la cache e ho fatto richiesta di attivazione di CloudFlare e mi verrà attivare nelle prossime 24 ore. Anche a me infatti non sembrava ci fossero errori di sintassi...
    Non so che fare...

  17. #17
    Guest

    Predefinito

    Nulla, anche con CloudFlare in modalità sviluppo e la cache svuotata il problema persiste

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

    Predefinito

    E quale sarebbe l'errore che visualizzi?

  19. #19
    Guest

    Predefinito

    Sempre:

    Parse error: syntax error, unexpected T_STRING in /membri/programmerscommunity/confermareg.php on line 10

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

    Predefinito

    Per curiosità, prova a sostituire il codice con del codice che sicuramente funziona, ad esempio puro html.

    Ciao!

  21. #21
    Guest

    Predefinito

    E' assurdo: anche sostituendo il codice php con dell'html puro non cambia nulla... Restituisce sempre lo stesso errore. Deve essere un problema di Altervista. Mai successa una cosa simile!

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

    Predefinito

    Non è che stai sbagliando account?

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

    Predefinito

    Oppure non sostituisci la pagina? .

    Se altervista avesse un problema, tutti i siti ospitati nel tuo server (e sono tanti) farebbero la stessa cosa.

    EDIT: anticipato

    Ciao!

  24. #24
    programmerscommunity non è connesso Utente giovane
    Data registrazione
    26-03-2013
    Messaggi
    35

    Predefinito

    Avevate ragione; fidandomi erroneamente del login automatico ero entrato in un altro mio sito...
    Ho aggiornato il file ed ora non mi restituisce alcun errore, ma rimane una schermata bianca e non effettua alcun operazione nel db

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

    Predefinito

    Prova a rifare l'esperimento con la pagina puro HTML.

    EDIT: ah, forse è corretto: se non trova nessuno nel database, riceverai una pagina bianca!

    Ciao!

  26. #26
    programmerscommunity non è connesso Utente giovane
    Data registrazione
    26-03-2013
    Messaggi
    35

    Predefinito

    Il fatto è che non è possibile che non trovi nulla nel db; l'unico dato attualmente presente è proprio quello che deve trovare e modificare.
    Ma se non trovasse nulla; non dovrebbe restituirmi un errore?

    Dimenticavo: ho fatto la prova con una pagina HTML e funziona. Ora ho rimesso il codice originario.

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

    Predefinito

    Citazione Originalmente inviato da programmerscommunity Visualizza messaggio
    Ma se non trovasse nulla; non dovrebbe restituirmi un errore?
    No, perché? Semplicemente la condizione dentro il while non è mai vera.

    Citazione Originalmente inviato da programmerscommunity Visualizza messaggio
    Il fatto è che non è possibile che non trovi nulla nel db; l'unico dato attualmente presente è proprio quello che deve trovare e modificare.
    Ne sei sicuro? (magari controlla i valori da phpMyAdmin).

    Ciao!

  28. #28
    programmerscommunity non è connesso Utente giovane
    Data registrazione
    26-03-2013
    Messaggi
    35

    Predefinito

    Ho controllato; i valori che ho nel db, i nomi dei campi e del db corrispondono

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

    Predefinito

    Beh, allora controlla che cosa ci finisce nella variabile row all'interno del while.

  30. #30
    programmerscommunity non è connesso Utente giovane
    Data registrazione
    26-03-2013
    Messaggi
    35

    Predefinito

    Il valore che assume la variabile $row è: Array
    L'ho fatto stampare aggiungendo la stringa:
    echo $row;
    subito dopo il while

Pagina 1 di 2 12 UltimoUltimo

Regole di scrittura

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