Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    Problema con piu' form in una pagina

    Salve, creando una pagina che ha piu' form (gli altri form appaiono solo in certi casi), sto riscontrando un problema: Al secondo form quando premo sul submit mi rimanda al primo form come se non avessi fatto nulla. Ho provato varie cose ma nulla, questi sono i codici:

    Codice PHP:
    <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="POST">
    <div id="reg_left">
    <span class="name">Username</span>

    <input type="text" name="username" required />


    <span class="name">Password</span>

    <input type="password" name="password" required />
    </div>
    <span class="name">Email</span>

    <input type="email" name="email" required />


    <span class="name">Ripeti Password</span>

    <input type="password" name="password_check" required />


    <input type="submit"  class="submit" value="Registrati" name="reg" /></form></div>

    <?php

    if(!file_exists('mybeat_settings.php')) {
    header ('Location: install.php');
    }

    include(
    'mybeat_settings.php');

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

    $username str_replace('\'',''htmlspecialchars($_POST['username']));
    $password md5(str_replace('\'',''htmlspecialchars($_POST['password'])));
    $password_check md5(str_replace('\'',''htmlspecialchars($_POST['password_check'])));
    $email str_replace('\'',''htmlspecialchars($_POST['email']));

    $select_prefix mysql_fetch_array(mysql_query("SELECT * FROM mybeat_other WHERE type='prefix'"));
    $prefix $select_prefix['value'];
    $tabella_utenti $prefix."users";
    $esiste_veramente mysql_query("SELECT * FROM `$tabella_utenti` WHERE username='$username'");

    if(empty(
    $username) || empty($password) || empty($password_check) || empty($email)) {
    echo 
    '<div id="error">Devi riempire tutti i campi.</div>';
    } elseif(
    $password != $password_check) {
    echo 
    '<div id="error">Le password non corrispondono.</div>';
    } elseif(
    mysql_num_rows($esiste_veramente) == 0) {
    echo 
    '<div id="error">Questo utente non esiste nel forum.</div>';
    } else {
    $seleziona_cat mysql_query("SELECT * FROM mybeat_groups"); // Seleziono le categorie
    while ($ref mysql_fetch_row($seleziona_cat)) {
    $cat_numeri $ref[1]; // La variabile contiene il record sotto il campo "numero"
    $check mysql_query("SELECT * FROM `$tabella_utenti` WHERE username='$username' AND usergroup='$cat_numeri'");
    if(
    mysql_num_rows($check) != 0) {
    $i++; // Se il numero di righe è differente da 0, quindi esiste, incremento $i
    }
     }
     
    if(
    $i == 0) {
    echo 
    '<div id="error">Non fai parte di nessuna categoria scelta dal founder.</div>';
    } else {
    $check_esistente mysql_query("SELECT * FROM mybeat_users WHERE username='$username'");
    if(
    mysql_num_rows($check_esistente) == 1) {
    echo 
    '<div id="error">Utente già registrato.</div>';
    } else {
    $ip_corrente $_SERVER['REMOTE_ADDR'];
    $select_ip mysql_fetch_array(mysql_query("SELECT * FROM `$tabella_utenti` WHERE username='$username'"));
    $ip_db $select_ip['regip'];
    if(
    $ip_db != $ip_corrente) {
    echo <<<EOT
    [b]Attenzione![/b] Il tuo IP corrente non corrisponde con quello dell' utente del forum di cui hai inserito il nickname. Affinchè possiamo assicurarci che sia tu il vero [b]
    EOT;
    echo 
    $username;
    echo <<<EOT
    [/b] ti preghiamo di inserire qui sotto l' indirizzo mail col quale ti sei registrato al forum MyBB. Se non lo ricordi, accedendo a tal forum e andando nel pannello di controllo lo troverai scritto.


    <form action="
    {$_SERVER['PHP_SELF']}" method="POST">
    <input type="email" name="email_confirm" required />


    <input type="submit" value="Conferma" name="conf_mail" /></form>

    EOT;

    if(isset(
    $_POST['conf_mail'])) {
    echo 
    $username."
    "
    ;
    echo 
    $_POST['email_confirm'];
    }
      } else {
    mysql_query("INSERT INTO mybeat_users (username, password) VALUES ('$username','$password')");
    echo 
    '<div id="ok">Registrazione completata. Ora potrai accedere a MyBeat News cliccando su "Login".</div>';
    }
     }
      }
       }
        }
    ?>
    E se volete provare qui c'è la pagina: http://mybeatnews.altervista.org/myb...istrazione.php

    Per provarla inserite come dati:

    Username: test
    Password: asdasd
    Email: scegliete voi quale
    Conf. password: asdasd

    Quando vi dirà che l' IP non corrisponde inserite come email una a caso, ad esempio asd@ciao.it e vedrete..
    Social Network in costruzione.. Misto tra Twitter e Facebook.. Twitbook o facetter?

  2. #2
    Utente di HTML.it L'avatar di gasmor
    Registrato dal
    Apr 2004
    Messaggi
    1,768
    prova innanzitutto a dare un nome e id univoci ad ogni form
    Hai provato a creare un sito con Jaaxo Cms PHP5? new!

  3. #3
    Niente, forse ho capito l' errore.. Praticamente ad ogni form viene aggiornata la pagina, quindi si presuppone che al secondo form bisogna riempire nuovamente quello sovrastante.. Tento di fare una sorta di step e vi faccio sapere
    Social Network in costruzione.. Misto tra Twitter e Facebook.. Twitbook o facetter?

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.