Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2014
    Messaggi
    4

    Problema script registrazione php

    Salve a tutti.. sono nuovo, vi scrivo per un problema: Sto creando un sito internet con un area di registrazione, dove gli utenti possono registrarsi per poi accedere ad una loro area personale; i loro dati devono essere salvati in un database che ho creato in phpmyadmin con MySQL. il problema è che quando faccio la prova per registrare è come se non venisse letto lo script e il database non memorizzasse i dati.....

    vi posto cosa ho fatto, così magari potete darmi una mano a capire se c'è qualche errore....
    GRAZIE IN ANTICIPO...



    • FASE 1

    Ho creato uno script di collegamento al database: l'ho chiamato config.php

    <?php
    session_start();
    $db_host= "localhost";
    $db_user= "root";
    $db_password= "pass";
    $db_name= "my_epr";


    mysql_select_db($db_name, mysql_connect($db_host, $db_user, $db_password)) or die("Errore durante la connessione al database.".mysql_error());
    function clear($var) {
    return addslashes(htmlspecialchars(trim($var)));
    }
    ?>



    • FASE DUE

    Ho creato la pagina chiamata registrazione.php: all'interno del <body> di questo file ho inserito oltre a vari elementi del menù, sia lo script in php sia il form creato con html:
    <body>
    <?php

    //includo il file per la connessione al database

    include ('config.php');

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

    //riscrivo i dati presenti nel form

    $nome= isset($_POST['Nome']) ? clear($_POST['nome']) : false;
    $cognome=isset($_POST['Cognome']) ? clear($_POST['cognome']) : false;
    $indirizzo_email=isset($_POST['Indirizzo_email']) ? clear($_POST['indirizzo_email']) : false;
    $password=isset($_POST['Password']) ? clear($_POST['password']) : false;

    //controlliamo che tutti i campi non siano vuoti

    if(empty($nome) || empty($cognome) || empty($indirizzo_email) || empty($password)) {

    echo 'Non tutti i campi sono stati riempiti'

    ;} elseif(strlen($password) < 6 || strlen($password) > 20) {

    echo 'Password troppo corta; Minimo 6 caratteri e massimo 20'

    ;} elseif (!filter_var($email, FILTER_VALIDATE_EMAIL)){

    echo 'Indirizzo email non valido'

    ;} else {

    //criptiamo la password

    $password = md5($password);

    //inseriamo i valori nel database

    if(mysql_query("INSERT INTO utenti
    (nome , cognome , indirizzo_email , password ) VALUES
    ('$nome', '$cognome', '$indirizzo_email', '$password_md5')")) {

    echo 'registrazione effettuata con successo.';

    } else {

    echo 'Errorre nella registrazione: '.mysql_error();

    }
    }

    } else {

    ?>


    <form action="<?php echo $_SERVER['PHP SELF']; ?>" method="POST">
    <div class="form-title"><h2>REGISTRAZIONE</h2></div>
    <div class="form-title">Nome</div>
    <input class="form-field" type="text" name="nome" required /><br />
    <div class="form-title">Cognome</div>
    <input class="form-field" type="text" name="cognome" required /><br />
    <div class="form-title">Indirizzo Email</div>
    <input class="form-field" type="text" name="indirizzoEmail" required /><br />
    <div class="form-title">Password</div>
    <input class="form-field" type="password" name="password" required /><br />
    <div class="submit-container">
    <input class="submit-button" type="submit" value="REGISTRATI" />
    </div>
    </form>
    <?php
    }
    ?>
    </body>

    Il problema è quello che vi citavo prima: inserisco i dati nel form ma quando clicci su registra il form si azzera e i dati non vengono inviati al database e di conseguenza non appare nessun messaggio di avvenuta registrazione....
    Vi prego... qualcuno mi aiuti.. ((((((( (((((

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,503
    Benvenuto.

    questa condizione
    if (isset($_POST['submit'])) {

    non sarà mai vera, per esserlo dovrebbe esserci un campo con name='submit' nel form, però non c'è, c'è solo un campo type='submit', che non è la stessa cosa.

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2014
    Messaggi
    4
    Non me n'ero accorto... Hai ragione!!!
    Quindi cosa dovrei fare? (((
    Il resto è corretto?

  4. #4
    Utente di HTML.it
    Registrato dal
    Jun 2014
    Messaggi
    4
    risolto ho capito l'errore.. ce n'era più di uno anche con il datasse!
    GRAZIE MILLE PER LA DRITTA! <3

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.