Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    509

    [php+html] condizione multipla. come?

    ciao a tutti, sto cercando di fare un controllo sui campi che vado ad inserirli.

    il problema è che continuo a scrivere if ed elseif con condizioni...tipo cosi:

    codice:
    if (isset($_POST['save'])){
    
    $errmsg="";
    if  ($make== "<Seleziona>"){
    	 $errmsg="ERRATO!" ;
    	}
    elseif($model == <Seleziona>){
    	 $errmsg="ERRATO!";
    	}
    elseif($bodycolor == <Seleziona>){
    	 $errmsg="ERRATO!" ;
    	}
    elseif($fueltype == <Seleziona>){
    	 $errmsg="ERRATO!";
    	}
    elseif  (empty($publicprice)||
    	 !eregi("[0-9]+[0-9]+*", $publicprice)){
    	 $errmsg="ERRATO!" ;
    	}
    elseif(empty($dealerprice)||
    	 !eregi("\b[1-9][0-9]{2,4}\b", $dealerprice)){
    	 $errmsg="ERRATO!";
    	}
    non c'è un modo per rendere piu' snella tutto questo?
    codice:
    if  ($make,$model,$bodycolor== "<Seleziona>")||(empty($make,$model,$bodycolor){
    	 $errmsg="ERRATO!" ;
    tipo cosi'.....si puo'?

  2. #2
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    509
    nessuno ha qualche idea su comefare una cosa simile?

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    509
    aiutino?

  4. #4
    potresti fare

    if (($make== "<Seleziona>") OR ($model == <Seleziona> )){
    $errmsg="ERRATO!" ;
    }
    ecc...

  5. #5
    Bè, per cominciare potresti agglomerare il tutto in una sola condizione (dato che l'operazione è la stessa per tutte le condizioni):

    codice:
    if (isset($_POST['save'])){
    
    $errmsg="";
    if  ($make== "<Seleziona>"
        || $model == <Seleziona>  
        || $bodycolor == <Seleziona>  
        || $fueltype == <Seleziona> 
        || empty($publicprice)
        || !eregi("[0-9]+[0-9]+*", $publicprice
        || empty($dealerprice
        || !eregi("\b[1-9][0-9]{2,4}\b", ealerprice)
       $errmsg="ERRATO!";
    Mi sembra che ci sia un'istruzione di inclusione del tipo if $str IN {"st1","st2",...), ma non conosco la sintassi.

  6. #6
    Originariamente inviato da Jostock
    potresti fare

    if (($make== "<Seleziona>") OR ($model == <Seleziona> )){
    $errmsg="ERRATO!" ;
    }
    ecc...
    ops, abbiamo postato in simultanea (o quasi)

  7. #7
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    509
    èquella che speravo di trovare...purtroppo provando la sintassi a caso non l'ho trovata.

    queste sono stringhe che ho trovato quae la nella rete e che tra mnuale ed internet sto cercando dicapire...

    se nonho capito male

    è una condizione per il quale se $make è uguale al testo <seleziona>
    oppure la funzione eregi da esito positivo (quindi da esito negativo avendo il ! davanti) la funzione esegue l'istruzione..

    ed eregi esegue lìespressione generale in funzione della costante che si trova dopola virgola.

    solo uan cosa...qualunque espressione io metta come regola genrale nnon va.
    codice:
    !eregi("[0-9]+[0-9]+*", $publicprice)
    in questo caso in toeria il risultato è che se $publicprice è un valore diverso da numeri la funzione restituisce FALSE....
    problema è che restituisce FALSE anche se metto numeri..

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.