Visualizzazione risultati 1 fino 6 di 6

Discussione: operatore OR in if ()

  1. #1
    L'avatar di fabrifibra
    fabrifibra non è connesso Utente giovane
    Data registrazione
    05-06-2006
    Messaggi
    51

    Predefinito operatore OR in if ()

    è una richiesta un po banale, e penso che proprio per questo motivo sul forum non ho trovato nulla...

    io ho una funzione
    if ()

    all interno vanno piu condizioni...

    per fare l' AND si usa &&

    ma per fare l' OR tra una condizione e l'altra cosa viene utilizzato???

    (esigo una risposta in meno di 3 minuti, dai dai che è facile )

    grazie ;)
    Cerco esperto in AJAX, contattatemi tramite MP, IMPORTANTE ;)


  2. #2
    Guest

  3. #3
    L'avatar di fabrifibra
    fabrifibra non è connesso Utente giovane
    Data registrazione
    05-06-2006
    Messaggi
    51

    Predefinito

    ora mi viene mostrato questo errore

    Parse error: syntax error, unexpected T_BOOLEAN_OR, expecting ',' or ')'
    a questa riga di codice....

    Codice PHP:
    ...
    }
    if(isset(
    $_POST['nome_mittente'] || $_POST['nome_destinatario'] || $_POST['email_mittente'] || $_POST['email_destinatario']))
    {
    ...
    forse perche il doppio separatore non può essere utilizzato in "isset()"?
    Ultima modifica di fabrifibra : 27-03-2008 alle ore 13.46.07
    Cerco esperto in AJAX, contattatemi tramite MP, IMPORTANTE ;)


  4. #4
    L'avatar di dementialsite
    dementialsite non è connesso Super Moderatore
    Data registrazione
    19-10-2004
    Residenza
    fuori Padova
    Messaggi
    5,046

    Predefinito

    Non è quello l'errore... l'operatore || (come && del resto) può legare solo valori booleani ("vero" o "falso")... devi scrivere così:
    Codice PHP:
    if(isset($_POST['nome_mittente']) || isset($_POST['nome_destinatario']) || isset($_POST['email_mittente']) || isset($_POST['email_destinatario']))
    Stammi bene...
    Le questioni tecniche hanno risposte migliori nel forum pubblico, non trovi?

    When you don't know your next step... improvise

    ALTERVISTA WANTS YOU!
    Vuoi diventare moderatore su AlterVista? Scopri come...

  5. #5
    L'avatar di saitfainder
    saitfainder non è connesso Sëniör Stäff
    Data registrazione
    06-12-2002
    Residenza
    Torino
    Messaggi
    8,715

    Predefinito

    A essere precisi: il fatto è che isset non è una funzione, ma un costrutto del linguaggio che accetta come parametri solo un elenco di variabili di cui verificare l'esistenza, messe in AND.


    «È una mia peculiarità distorcere la verità e inventarne di nuove.»
    «I tuoi orientamenti hanno su di me un effetto prossimo allo zero.»


  6. #6
    L'avatar di dreadnaut
    dreadnaut non è connesso Super Moderatore
    Data registrazione
    22-02-2004
    Messaggi
    6,266

    Predefinito

    uhm, non esattamente... edit: riferito a dementialsite!

    In php gli operatori booleani possono legare qualsiasi cosa, perché il 99% dei valori sono confrontabili o accomunabili a boolean. Stringa || stringa è perfettamente valido, e ritorna vero se entrambe le stringhe sono non vuote.

    L'errore sopra è dovuto alla particolare "funzione" isset(), che si aspetta come parametro una variabile e non un espressione:
    Nota: Attenzione La funzione isset() lavora soltanto con variabili, il passaggio di qualsiasi altro tipo di parametro genera un errore di parsing [...]
    Si corregge comunque come indicato da Dementialsite, richiamando la funzione per ogni variabile da controllare.

    Aggiungo anche che in php esistono due operatori per la disgiunzione, || ed or, che funzionano esattamente allo stesso modo, ma hanno diversa precedenza.
    Ultima modifica di dreadnaut : 27-03-2008 alle ore 14.37.21

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •