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

    errore invio dato tag input

    Ciao a tutti, ho un problemino:

    questo è il sorgente che ho scritto di uno script...

    <?php
    if(isset($_POST['inviato']))
    {
    if($_POST['tipo']==quotidiani)
    {
    echo "Inserisci tutti i dati ed invia il form

    ";
    echo "<form action='insert.php' method='post'>";
    echo "<input type='text' name='testata'>";
    echo " NOME QUOTIDIANO

    ";

    echo "<input type='text' name='acquisto'>";
    echo " PREZZO DI ACQUISTO

    ";

    echo "<input type='text' name='vendita'>";
    echo " PREZZO DI VENDITA

    ";

    echo "<input type='submit' value='Inserisci'> ";
    echo "<input type='reset' value='Resetta'>";
    echo "<input type='hidden' name='ok'>";
    echo "<input type='hidden' name='tipo' value='$_POST[tipo]'>";
    echo "</form>";
    }
    ...una volta inviato il form, ricarico lo stesso file insert.php e incredibilmente il valore del campo acquisto non mi viene passato, mentre gli altri due si!

    posto anche il resto del file insert.php che contiene il controllo dei dati inseriti:

    elseif(isset($_POST['ok']))
    {
    if($_POST[testata]=='' || $_POST[acquisto]='' || $_POST[vendita]=='')
    {
    echo "Non hai inserito uno dei valori

    ";
    echo "Torna indietro e inserisci tutti i dati
    ";
    }
    elseif(is_string($_POST[acquisto]) || is_string($_POST[vendita]))
    {
    //echo "$_POST[testata]
    ";
    //echo "$_POST[acquisto]
    ";
    //echo "$_POST[vendita]
    ";
    echo "Impossibile inserire i dati nel Database

    ";
    echo "I campi PREZZO DI ACQUISTO e PREZZO DI VENDITA devono contenere un numero decimale separato con un punto

    ";
    echo "Torna indietro e inserisci tutti i dati
    ";
    }
    ed ecco il risultato che ottengo levando i 3 commenti degli echo "variabili":

    il tempo

    0.9
    Impossibile inserire i dati nel Database

    I campi PREZZO DI ACQUISTO e PREZZO DI VENDITA devono contenere un numero decimale separato con un punto


    Torna indietro e inserisci tutti i dati
    come è possibile???? ho semplicemente fatto copia incolla ed ho cambiato solamente i nomi delle variabili!

  2. #2
    Utente di HTML.it
    Registrato dal
    May 2003
    Messaggi
    682
    Codice PHP:
    if(isset($_POST['inviato']))
    {
         if(
    $_POST['tipo']=="quotidiani")
                        {
                            echo 
    "Inserisci tutti i dati ed invia il form

    "
    ;
                            echo 
    "<form action='insert.php' method='post'>";
                            echo 
    "<input type='text' name='testata'>";
                            echo 
    " NOME QUOTIDIANO

    "
    ;
                            echo 
    "<input type='text' name='acquisto'>";
                            echo 
    " PREZZO DI ACQUISTO

    "
    ;
                            echo 
    "<input type='text' name='vendita'>";
                            echo 
    " PREZZO DI VENDITA

    "
    ;
                            echo 
    "<input type='submit' value='Inserisci'> ";
                            echo 
    "<input type='reset' value='Resetta'>";
                            echo 
    "<input type='hidden' name='ok'>";
                            echo 
    "<input type='hidden' name='tipo' value='{$_POST['tipo']}'>";
                            echo 
    "</form>";

    Nella if credo che devi mettere le virgolette al valore
    stringa da confrontare con tipo.
    Poi non ho capito tanto ma il valore quotidiani é presente
    in quei tag ?
    Facci sapere

  3. #3
    ho provato con le virgolette ma sapevo che nn era quello il problema...e infatti nn va

    beh non può stare li il problema perchè gli altri 2 dati mi vengono passati...l'unico che non mi viene passato è acquisto
    il valore quotidiani mi viene passato dal form precedente tramite un campo hidden, e li faccio il controllo quotidiani o illustrati e in base al risultato faccio comparire diversi campi di testo in cui inserisco i valori:
    --- nome del giornale
    --- prezzo di acquisto
    --- prezzo di vendita

    una volta inseriti i valori clicco su inserisci e i dati mi devono essere immessi nel database...
    logicamente prima ho fatto fare un controllo sul tipo di dati inseriti e quando vado a controllare
    elseif(is_string($_POST[acquisto]) || is_string($_POST[vendita]))
    mi dava errore pur avendo inserito i dati esattamente...andando a controllare con i 3 echo... mi sono accorto che il valore di acquisto non viene passato

    spero di essere stato più chiaro ora

  4. #4
    ho risolto...
    if($_POST[testata]=='' || $_POST[acquisto]='' || $_POST[vendita]=='')

    non avevo messo == ma = su $_POST[acquisto] e non avevo messo gli apicetti ad ogni variabile

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.