Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2007
    Messaggi
    70

    salva dati da form sul db

    Ciao a tutti, sto svolgendo un progetto per l'università e ho delle difficoltà...
    Devo ricevere dei valori da un form e salvarli nel db già creato(anche la tabella)....sarà che è tutto il giorno che son davanti al pc ma ancora devo riuscirci...Se inserisco i valori manualmente nella tabelle, li legge e stampa ma non riesco a salvarli arrivando dal form...

    <?php
    include("config.inc.php");

    //Recupero dei dati inviati dal form di registrazione dell'artista
    $nome=$_POST[nome];
    $giorno=$_POST[giorno];
    $mese=$_POST[mese];
    $anno=$_POST[anno];
    $genere=$_POST[genere];
    $mail=$_POST[email];
    $utente=$_POST[utente];
    $password=$_POST[password];
    $biografia=$_POST[biografia];

    //Controllo per verificare che i dati necessari siano stati inseriti
    if (trim($nome) == '' OR trim($utente) == '' OR trim($password) == '')
    {
    echo 'I campi Nome, username e password devono essere riempiti!';
    }
    elseif

    //sostituire il carattere < con l'equivalente html &lt; e inserire nel testo i tag di fine riga:
    $nome = str_replace( "<", "&lt;", $nome);
    $nome = str_replace( ">", "&gt;", $nome);
    $genere = str_replace( "<", "&lt;", $genere);
    $genere = str_replace( ">", "&gt;", $genere);
    $biografia = str_replace( "<", "&lt;", $biografia);
    $biografia = str_replace( ">", "&gt;", $biografia);
    $biografia = nl2br($biografia);

    //Conversione della data in formato timestamp:
    $data = mktime( "0", "0", "0", $mese, $giorno, $anno);

    //A questo punto prima di inserire i dati dobbiamo connetterci al database
    $db = mysql_connect($db_host, $db_user, $db_password);
    if ($db == FALSE)
    {
    die ('Errore nella connessione. Verificare i parametri nel file config.inc.php');
    }
    mysql_select_db($db_name, $db)
    or die ('Errore nella selezione del database. Verificare i parametri nel file config.inc.php');

    //query che dovrà occuparsi dell'inserzione
    $query = " INSERT INTO Artisti_Registrati (id, nome, data, genere, email, utente, password, biografia)
    VALUES ('', '$nome', '$data', '$genere', '$email', '$utente', '$password', '$biografia' );

    /verificare se l'inserimento è avvenuto:

    if (mysql_query($query, $db))
    {
    echo 'Registrazione effettuata correttamente';
    }
    else
    {
    echo 'Errore durante l'inserimento';
    mysql_close($db);
    }

    ?>



    L'ultimo errore riscontrato è questo, ma ne irsolvo uno e ne compare un altro...il codice dovrebbe essere semplice...
    Parse error: syntax error, unexpected T_VARIABLE, expecting '(' in C:\xampp\xampp\htdocs\progetto\RegistraArtista.php on line 29

    Se potete darci uno sguardo, a me pare corretto....grazie in anticipo

  2. #2
    Utente di HTML.it
    Registrato dal
    Nov 2007
    Messaggi
    70
    Dopo una notte di riposo ho trovato l'errore e corretto...ora salva i dati nel db tranne che l'email e la data(o visualizza 0 o una serie di numeri da phpmyadmin)...

    LA tabella l'ho creata cosi:
    $query = "CREATE TABLE Artisti_Registrati (id INT (5) UNSIGNED not null AUTO_INCREMENT,
    nome VARCHAR (255) not null , data INT (11) , genere VARCHAR (50) ,
    email VARCHAR (50) , utente VARCHAR (20) not null , password VARCHAR (10) not null ,
    biografia TEXT , PRIMARY KEY (id))";


    qualche idea?

  3. #3
    Allora.... io farei così:

    1) togli dalla query INSERT il campo ID dai nomi dei campi ed il valore '', da quello delle values... tanto ID è auto increment.

    2) nel campo VALUES toglierei gli apici da $data, altrimenti MySQL crede tu gli stia passando una stringa, mentre il campo accetta solo numeri interi.

    3) controlla che 50 caratteri ti bastino per il campo email.

    <ALCIO />
    Per cortesia: no PVT Tecnici
    ******* LINKS *******
    SRL
    MetalWave

  4. #4
    Utente di HTML.it
    Registrato dal
    Nov 2007
    Messaggi
    70
    Grazie per la risposta...per l'email l'errore era solo di scrittura, invece che scrivere $email c'er $mail...nella query usavo $email...

    PEr la data ho risolto cosi:
    $data = date ("Ymd", mktime(0,0,0,$mese,$giorno,$anno));

  5. #5
    Utente di HTML.it
    Registrato dal
    Nov 2007
    Messaggi
    70
    PEr non aprire un nuovo topic....

    Potete indirizzarmi su una funzione che per esempio lascia passare qualche secondo e poi carica un'altra pagina??

    Mi spiego: tramite form effettuo l'iscrizione, una volta avvenuta lo comunico tramite una pagina che visualizza il messaggio di avvenuta iscrizione. VOrrei che dopo qualche secondo da quella pagina si caricasse un'altra pagina per poter effettuare il login....senza dover mettere un link da far cliccare all'utente...

  6. #6
    Con PHP non credo si possa fare, ma queste cose le risolvi con javascript.

    Credo proprio che ti convenga postare nel forum apposito.
    <ALCIO />
    Per cortesia: no PVT Tecnici
    ******* LINKS *******
    SRL
    MetalWave

  7. #7
    Utente di HTML.it
    Registrato dal
    Nov 2007
    Messaggi
    70
    Originariamente inviato da alcio74
    Con PHP non credo si possa fare, ma queste cose le risolvi con javascript.

    Credo proprio che ti convenga postare nel forum apposito.
    ah ok grazie

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.