Visualizzazione dei risultati da 1 a 7 su 7

Discussione: problam con if

  1. #1
    Utente di HTML.it L'avatar di torrone
    Registrato dal
    Apr 2006
    residenza
    Padova
    Messaggi
    1,128

    problam con if

    salve, allora io sto lavoranndo ad un form di registrazione..
    voglio fare il modo ceh ci siano dei campi obbligatori, il blocco se si usa il nick e email già esistenti nel db e il controllo all'immagine captcha..

    ora sto usando questo codice ma è errato.. qualcuno riesci ad aiutarmi a correggerlo?

    Codice PHP:
    <?php

    include 'configurazione.php';

    if (
    $_POST[cmd] == FALSE)


    ?>

    <table>
    <tr>
    <td>
    Le voci contrassegnate con * sono obbligatorie
    </td>
    </tr>
    </table>

    <form method="post">
    <table border="0" class="bordi" width="80%" align="center">
    <tr>
    <td class="bordi">Nickname*</td>
    <td class="bordi"><input type="text" name="nickname"></td>
    </tr>
    <tr>
    <td class="bordi">Password*</td>
    <td class="bordi"><input type="password" name="password"></td>
    </tr>
    <tr>
    <td class="bordi">Email*</td>
    <td class="bordi"><input type="text" name="email"></td>
    </tr>
    <tr>
    <td colspan="2" class="bordi"><center>Se non riesci a visualizzare l'immagine, contatta l'amministratore.
    [img]securimage_show.php[/img]</center></td>
    </tr>
    <tr>
    <td class="bordi">Codice di conferma*

    <div class="fontsmall">Inserisci il codice di conferma visuale. Il sistema non riconosce la differenza tra maiuscole e minuscole.</div></td>
    <td class="bordi"><input type="text" name="code"></td>
    </tr>
    <tr>
    <td class="bordi">Nome</td>
    <td class="bordi"><input type="text" name="nome"></td>
    </tr>
    <tr>
    <td class="bordi">Cognome</td>
    <td class="bordi"><input type="text" name="cognome"></td>
    </tr>
    <tr>
    <td colspan="2" class="bordi"><input type="submit" value="Registrati">
    <input type="hidden" name="cmd" value="add"></td>
    </tr>
    </table>
    </form>

    <?php

    $sql 
    "SELECT * FROM studios_utenti WHERE id_utente";
    $query = @mysql_query ($sql);

    while (
    $row2=@mysql_fetch_array ($query)){

    if (
    $row2[nickname] == $_POST[nickname] OR $row2[email] == $_POST[email]) {

    echo 
    "<table><tr><td><font color='red'>Il nickname e/o l'email scelta è già esistente nel db la prego di sceglierne un'altra</font>

    [url='#']Torna indietro[/url]</td></tr></table>"
    ;

     } else {

    } else {

    if (
    $_POST[nickname] == FALSE OR $_POST[password] == FALSE OR $_POST[email] == FALSE OR $_POST[code] == FALSE)

    {

    echo 
    "<table><tr><td><font color='red'>Non hai compilato tutti i campi obbligatori. Ti ricordo che tutti i campi contrassegnati con * sono obbligatori.</font>

    [url='#']Torna indietro[/url]</td></tr></table>"
    ;

    } else {

    include(
    "securimage.php");
    $img = new securimage();
    $valid $img->check($_POST['code']);

    if(
    $valid == TRUE) {

    mysql_query("INSERT INTO studios_utenti
    VALUES ('',
            '" 
    $_POST[nickname] . "',
            '" 
    $_POST[password] . "',
            '" 
    $_POST[email] . "',
            '" 
    $_POST[nome] . "',
            '" 
    $_POST[cognome] . "',
            '0',
            '0')"
    );


    $email_attivazione"$_POST[email]";
    $oggetto "Attivazione account per TorroWebStudios";
    $messaggio "<table>
    <tr>
    <td>
    La ringrazio per aver effettuato la registrazione!



    Ecco i dati personali:



    Nickname: 
    $_POST[nickname]


    Password: 
    $_POST[password]



    Qui di seguito il link per attivare l'account



    [url='URL']URL[/url]
    </td>
    </tr>
    </table>"
    ;

    $intestazioni  "MIME-Version: 1.0\r\n";
    $intestazioni .= "Content-type: text/html; charset=iso-8859-1\r\n";
    $intestazioni .= "From: bla bla bla <info@blablabla.org>";

    mail($email_attivazione$oggetto$messaggio$intestazioni);


    echo 
    "Iscrizione avvenuta con successo, all'email inserita è stato inviato il link per attivare l'account!";

    } else {

    echo 
    "Il codice di conferma inserito non è esatto";
      
    }
    }
    }
    }
    }

    ?>

  2. #2
    Utente di HTML.it
    Registrato dal
    May 2003
    Messaggi
    591
    ma indentare il codice non è più di moda?
    comunque controlla dove hai messo gli else

  3. #3
    Utente di HTML.it L'avatar di torrone
    Registrato dal
    Apr 2006
    residenza
    Padova
    Messaggi
    1,128
    Originariamente inviato da stabi
    ma indentare il codice non è più di moda?
    non l'ho capita :rollo:
    comunque controlla dove hai messo gli else
    si so ceh è li il problema infatti ho chiesto aiuto qui proprio epr quello..

  4. #4
    Utente di HTML.it L'avatar di Lak3d
    Registrato dal
    Aug 2006
    Messaggi
    1,031
    Codice PHP:
    <?php

    $sql 
    "SELECT * FROM studios_utenti WHERE id_utente";
    $query = @mysql_query ($sql);

    while (
    $row2=@mysql_fetch_array ($query)){

    if (
    $row2[nickname] == $_POST[nickname] OR $row2[email] == $_POST[email]) {

    echo 
    "<table><tr><td><font color='red'>Il nickname e/o l'email scelta è già esistente nel db la prego di sceglierne un'altra</font>

    [url='#']Torna indietro[/url]</td></tr></table>"
    ;

    } else {

    } else {
    missà che uno dei due else va spostato proprio sopra l'apertura del tag php...
    ps: la query non va bene... where id_utente uguale a cosa? manca la condizione

  5. #5
    Utente di HTML.it L'avatar di torrone
    Registrato dal
    Apr 2006
    residenza
    Padova
    Messaggi
    1,128
    Originariamente inviato da Lak3d
    Codice PHP:
    <?php

    $sql 
    "SELECT * FROM studios_utenti WHERE id_utente";
    $query = @mysql_query ($sql);

    while (
    $row2=@mysql_fetch_array ($query)){

    if (
    $row2[nickname] == $_POST[nickname] OR $row2[email] == $_POST[email]) {

    echo 
    "<table><tr><td><font color='red'>Il nickname e/o l'email scelta è già esistente nel db la prego di sceglierne un'altra</font>

    [url='#']Torna indietro[/url]</td></tr></table>"
    ;

    } else {

    } else {
    missà che uno dei due else va spostato proprio sopra l'apertura del tag php...
    ps: la query non va bene... where id_utente uguale a cosa? manca la condizione
    riguardo al quory si ho visto ceh è sbagliata mi sono scordato un pezzo

    riguardo agli else ho notato ceh ho proprio bagliato a afre il copia incolla.. un secondo ceh lo rifaccio.. +

    eccolo qui

    Codice PHP:
    <table width="95%"  border="0" cellspacing="0" cellpadding="0" style="border: 1px solid #3F3F3F">
    <tr>
    <td background="img/02.jpg" height="16">[b]-=Registrati=-[/b]</td>
    </tr>
    <tr>
    <td bgcolor="#191919">





    <?php

    include 'configurazione.php';

    if (
    $_POST[cmd] == FALSE)


    ?>

    <table>
    <tr>
    <td>
    Le voci contrassegnate con * sono obbligatorie
    </td>
    </tr>
    </table>

    <form method="post">
    <table border="0" class="bordi" width="80%" align="center">
    <tr>
    <td class="bordi">Nickname*</td>
    <td class="bordi"><input type="text" name="nickname"></td>
    </tr>
    <tr>
    <td class="bordi">Password*</td>
    <td class="bordi"><input type="password" name="password"></td>
    </tr>
    <tr>
    <td class="bordi">Email*</td>
    <td class="bordi"><input type="text" name="email"></td>
    </tr>
    <tr>
    <td colspan="2" class="bordi"><center>Se non riesci a visualizzare l'immagine, contatta l'amministratore.
    [img]securimage_show.php[/img]</center></td>
    </tr>
    <tr>
    <td class="bordi">Codice di conferma*

    <div class="fontsmall">Inserisci il codice di conferma visuale. Il sistema non riconosce la differenza tra maiuscole e minuscole.</div></td>
    <td class="bordi"><input type="text" name="code"></td>
    </tr>
    <tr>
    <td class="bordi">Nome</td>
    <td class="bordi"><input type="text" name="nome"></td>
    </tr>
    <tr>
    <td class="bordi">Cognome</td>
    <td class="bordi"><input type="text" name="cognome"></td>
    </tr>
    <tr>
    <td colspan="2" class="bordi"><input type="submit" value="Registrati">
    <input type="hidden" name="cmd" value="add"></td>
    </tr>
    </table>
    </form>

    <?php

    } else {

    $sql "SELECT * FROM studios_utenti WHERE id_utente";
    $query = @mysql_query ($sql);

    while (
    $row2=@mysql_fetch_array ($query)){

    if (
    $row2[nickname] == $_POST[nickname] OR $row2[email] == $_POST[email]) {

    echo 
    "<table><tr><td><font color='red'>Il nickname e/o l'email scelta è già esistente nel db la prego di sceglierne un'altra</font>

    [url='#']Torna indietro[/url]</td></tr></table>"
    ;

     } else {

    if (
    $_POST[nickname] == FALSE OR $_POST[password] == FALSE OR $_POST[email] == FALSE OR $_POST[code] == FALSE)

    {

    echo 
    "<table><tr><td><font color='red'>Non hai compilato tutti i campi obbligatori. Ti ricordo che tutti i campi contrassegnati con * sono obbligatori.</font>

    [url='#']Torna indietro[/url]</td></tr></table>"
    ;

    } else {

    include(
    "securimage.php");
    $img = new securimage();
    $valid $img->check($_POST['code']);

    if(
    $valid == TRUE) {

    mysql_query("INSERT INTO studios_utenti
    VALUES ('',
            '" 
    $_POST[nickname] . "',
            '" 
    $_POST[password] . "',
            '" 
    $_POST[email] . "',
            '" 
    $_POST[nome] . "',
            '" 
    $_POST[cognome] . "',
            '0',
            '0')"
    );


    $email_attivazione"$_POST[email]";
    $oggetto "Attivazione account per TorroWebStudios";
    $messaggio "<table>
    <tr>
    <td>
    La ringrazio per aver effettuato la registrazione!



    Ecco i dati personali:



    Nickname: 
    $_POST[nickname]


    Password: 
    $_POST[password]



    Qui di seguito il link per attivare l'account



    [url='http://www.torroneweb.org/sito/torrowebstudios/attivazione.php?nick=
    $_POST[nickname]'][url]http://www.torroneweb.org/sito/torrowebstudios/attivazione.php?nick=[/url]$_POST[nickname][/url]
    </td>
    </tr>
    </table>"
    ;

    $intestazioni  "MIME-Version: 1.0\r\n";
    $intestazioni .= "Content-type: text/html; charset=iso-8859-1\r\n";
    $intestazioni .= "From: Staff TorroWebStudios <info@torroneweb.org>";

    mail($email_attivazione$oggetto$messaggio$intestazioni);


    echo 
    "Iscrizione avvenuta con successo, all'email inserita è stato inviato il link per attivare l'account!";

    } else {

    echo 
    "Il codice di conferma inserito non è esatto";
      
    }
    }
    }
    }
    }

    ?>



    </p></td>
    </tr>
    <tr>
    <td height="12" background="img/13.jpg" bgcolor="#191919"></td>
    </tr>
    </table>

  6. #6
    Utente di HTML.it
    Registrato dal
    May 2003
    Messaggi
    591
    Originariamente inviato da torrone
    non l'ho capita :rollo:
    INDENTAZIONE del codice è quella buffa forma di scrittura del codice che porta via un pò più di tempo a scrivere ma che poi ti evita di fare certi errori o almeno te li risolvi facilmente.

    esempio

    Codice PHP:
    if cond  {
       
    operazioni
       
    if conf {
           
    operazioni
           
    .....
       }
       else {
           
    operazioni
       
    }
       
    operazioni
    }
    else {
       
    operazioni

        
    ........


  7. #7
    Utente di HTML.it
    Registrato dal
    May 2003
    Messaggi
    591
    probabilmente, non ho provato, ad occhio manca un else dopo il form di immissione dei dati

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.