Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2010
    Messaggi
    32

    problema con form e database

    Ciao ragazzi ho un problema
    ho in locale questo programma,
    ma non mi fa il controllo sul form, cioè ke siano vuoti o pieni i campi va avanti comunque
    potete dare un occhio perkè io non trovo l'errore

    codice:
     
    <?php
    // inclusione del file di classe
    include "funzioni sql.php";
    // istanza della classe
    $data = new MysqlClass();
    // chiamata alla funzione di connessione
    $data->connetti();
    
    // valorizzazione delle variabili con i parametri dal form
    if(isset($_POST['submit']))
     {
      if(isset($_POST['nome']) or isset($_POST['cognome']) or isset($_POST['cfisc']) or isset($_POST['indirizzo']) or isset($_POST['cap']) or isset($_POST['comune']) or isset($_POST['provincia']))
      {
       echo "Tutti i campi sono obbligatori";
      }
    
      else
     {  
        $nome = $_POST['nome'];
        $cognome = $_POST['cognome'];
        $cfisc = $_POST['cfisc'];
        $indirizzo = $_POST['indirizzo'];
        $cap = $_POST['cap'];
        $comune = $_POST['comune'];
        $provincia = $_POST['provincia'];
     
        $t = "cliente1"; # nome della tabella
        $v = array ($nome,$cognome,$cfisc,$indirizzo,$cap,$comune,$provincia); # valori da inserire
        $r =  "nome,cognome,cfisc,indirizzo,cap,comune,provincia"; # campi da popolare
     
       // chiamata alla funzione per l'inserimento dei dati
        $data->inserisci($t,$v,$r);
        echo "dati inseriti con successo";
       
     }
    }
          ?>
    <h1>Inserimento post:</h1>
    <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
    Nome:
    
    <input name="nome" type="text">
    
    Cognome:
    
    <Input name="cognome" type="text">
    
    Codice Fiscale:
    
    <Input name="cfisc" type="text">
    
    Indirizzo:
    
    <Input name="indirizzo" type="text">
    
    CAP:
    
    <Input name="cap" type="text">
    
    Comune:
    
    <Input name="comune" type="text">
    
    Provincia:
    
    <Input name="provincia" type="text">
    <input name="submit" type="submit" value="Invia">
    </form>
          <?php
    
    // disconnessione
    $data->disconnetti();
    
    ?>
    </body>
    </html>

  2. #2
    forse sarebbe meglio utilizzassi !empty() e non isset(). Dopo che hai spedito il form $_POST e' tutto settato pieno o vuoto che sia. Se poi vuoi stoppare lo script devi mettere un redirect seguito da un bel exit oppure spedire direttamente di nuovo al form.

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  3. #3
    prova così:

    if(isset($_POST['nome']) && isset($_POST['cognome']) && isset($_POST['cfisc']) && isset($_POST['indirizzo']) && isset($_POST['cap']) && isset($_POST['comune']) && isset($_POST['provincia']))

    O meglio:

    if($_POST['nome'] != '' && $_POST['cognome'] != '' && ...continua per tutti i campi....)

    con l'operatore booleano "or" basta che un campo sia impostato e ti inserisce i dati, se usi l'and "&&" invece basta un campo vuoto per bloccare tutto.

  4. #4
    Utente di HTML.it
    Registrato dal
    Mar 2010
    Messaggi
    32
    ora ho usato empty or e sembra ke funziona

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.