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

    form php connesso a database ma non inserisce dati

    Salve a tutti. Sono nuovo del forum. Ho il seguente problema.
    Voglio inserire in un database mysql dati presi da un form realizzato in php.
    Ho realizzato due classi.
    la prima classe(quella relativa al forum) è la seguente:

    Codice PHP:
    <?php include 'trattori.php';
    $trattore=new Trattori;
    ?>
    <?php session_start();?>

    <form action="inserisci.php" method="post">
    <fieldset>
    <legend>Inserisci</legend>
    <label for="marca">Marca</label>
    <input type="text" id="marca" name="marca">

    <label for="modello">Modello</label>
    <input type="text" id="modello" name="modello">

    <label for="stato">Stato</label>
    <input type="text" id="stato" name="stato">

    <label for="cavalli">Cavalli</label>
    <input type="text" id="cavalli" name="cavalli">

    <label for="ruotemotrici">Ruote motrici</label>
    <input type="text" id="ruotemotrici" name="ruotemotrici">

    <label for="prezzo">Prezzo</label>
    <input type="text" id="prezzo" name="prezzo">

    <label for="descrizione">Descrizione</label>
    <textarea id="descrizione" name="descrizione" rows="3" cols="30"/></textarea>


    <label for="image">Immagine</label>
    <input name="image" type="file" size="40" />




    <input name="upload" type="submit" value="Carica immagine" />


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


    il secondo file è il seguente


    Codice PHP:
    <?php
    $marca=filter_var($_POST['marca'],FILTER_SANITIZE_STRING);
    $modello=filter_var($_POST['modello'],FILTER_SANITIZE_STRING);
    $stato=filter_var($_POST['stato'],FILTER_SANITIZE_STRING);
    $cavalli=filter_var($_POST['cavalli'],FILTER_SANITIZE_STRING);
    $ruotemotrici=filter_var($_POST['ruotemotrici'],FILTER_SANITIZE_STRING);
    $prezzo=filter_var($_POST['prezzo'],FILTER_SANITIZE_STRING);
    $descrizione=filter_var($_POST['descrizione'],FILTER_SANITIZE_STRING);
    include '../includes/database.php';
    $connect=Database::getConnection();
    if($connect->connect_error){
    die("Fatal error".$connect->connect_error);
    }else{
    echo "Connessione al database riuscita
    ";
    $query = "INSERT INTO trattoreusato (id,marca,modello,stato,cavalli,ruotemotrici,prezz o,descrizione,immagine)
    VALUES ('',marca,modello,stato,cavalli,ruotemotrici,prezz o,descrizione,'img.pgf')";
    if(!$result=$connect->query($query)){
    echo "Impossibile aggiungere le righe";
    }else{
    echo "riga aggiunta con successo";
    }
    }
    ?>

    non so perchè nella tabella mysql, quando premo inserisci dal form inserisce tutti valori nulli. Non capisco dove ho sbagliato.
    Grazie in anticipo per la vostra disponibilità.

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    VALUES ('',marca,modello,stato,cavalli,ruotemotrici,prezz o,descrizione,'img.pgf')";

    Ti sei dimenticato tutti i $ davanti ai nomi delle variabili

  3. #3
    Hai dimenticato il simbolo $ davanti alle variabili.

    [EDIT]Battuto sul tempo [/EDIT]
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  4. #4
    Grazie per le risposte.Ho provato a mettere tutti i $ ma non mi fa inserire più i dati. Prima ottenevo tutti valori nulli, adesso facendo un echo ottengo il seguente risultato


    $query="INSERT INTO trattoriusati VALUES (''',$marca","$modello",......)";

    if($result=$connect->query($query)){
    echo "dati inseriti correttamente
    ";
    else{
    echo "i dati non sono stati inseriti";

    Adesso quindi viene eseguito il ramo else.Grazie in anticipo per le risposte

  5. #5
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    Sbagli a mettere gli apici e doppi apici

    VALUES ('',$marca,$modello,$stato,$cavalli,$ruotemotrici, $prezzo,$descrizione,'img.pgf')";

    metti gli apici singoli ' attorno alle variabili che vanno in campi del db definiti come varchar, char o text, niente attorno alle variabili che nel db vanno in un campo numerico.

  6. #6
    Grazie mille! Sbagliavo a mettere gli apici. Te ne sono grato

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.