Visualizzazione dei risultati da 1 a 10 su 10
  1. #1
    Utente di HTML.it L'avatar di blekm
    Registrato dal
    Jun 2004
    Messaggi
    8,310

    Problema con POST: Warning: invalid argument supplied for foreach()

    Warning: invalid argument supplied for foreach()

    come risolvere questa cosa?

    Questo è la parte di codice incriminata

    Codice PHP:
    foreach ($_POST["del"] as $key=>$label)
    {
    if (
    $this->delete_foto($label))
    {
    $photo_deleted++;
    }

    il funzionamento è questo: quando devo cancellare delle foto, seleziono una checkbox accanto alla foto. (Ogni foto ha la sua checkbox). Una volta selezionate le checkbox delle foto che voglio cancellare clicco su un bottone che mi cancella le foto da una determinata cartella. Se però io non seleziono nessuna checkbox, e clicco sul bottone, mi appare il messaggio da me programmato ("NESSUNA FOTO SELEZIOANTA") e in cima alla pagina l'errore che vi ho riportato sopra...

    come posso controllare che $_POST["del"] non sia vuoto?
    Il portale sul turismo a Lucca

    Siti web Lucca

    Vendo Tex a colori di Repubblica (primi 100 numeri) - info in pvt.

  2. #2
    codice:
    if(!empty($_POST['del'])) {
      foreach....
    } else { echo "ciccio sei vuoto";  }

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

  3. #3
    Utente di HTML.it L'avatar di blekm
    Registrato dal
    Jun 2004
    Messaggi
    8,310
    grazie, stasera provo...
    Il portale sul turismo a Lucca

    Siti web Lucca

    Vendo Tex a colori di Repubblica (primi 100 numeri) - info in pvt.

  4. #4
    Prova anche con is_array

    Without faith, nothing is possible. With it, nothing is impossible
    http://ilwebdifabio.it

  5. #5
    Utente di HTML.it L'avatar di blekm
    Registrato dal
    Jun 2004
    Messaggi
    8,310
    Originariamente inviato da whisher
    Prova anche con is_array

    sbaglio, o questa funzione mi dice solo se il parametro passato è un array o meno?
    Il portale sul turismo a Lucca

    Siti web Lucca

    Vendo Tex a colori di Repubblica (primi 100 numeri) - info in pvt.

  6. #6
    Originariamente inviato da blekm
    sbaglio, o questa funzione mi dice solo se il parametro passato è un array o meno?
    si, inoltre $_POST, $_GET, $_COOKIE ci sono sempre anche se fossero vuoti.

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

  7. #7
    Utente di HTML.it L'avatar di blekm
    Registrato dal
    Jun 2004
    Messaggi
    8,310
    Originariamente inviato da piero.mac
    si, inoltre $_POST, $_GET, $_COOKIE ci sono sempre anche se fossero vuoti.
    quindi, anche se fossero vuoti, sono sempre degli array...quindi è una funzione che a me non serve... giusto?
    Il portale sul turismo a Lucca

    Siti web Lucca

    Vendo Tex a colori di Repubblica (primi 100 numeri) - info in pvt.

  8. #8
    Codice PHP:
    is_array($_POST['del']); 
    se no il foreach cosa lo usi a fare !

    Without faith, nothing is possible. With it, nothing is impossible
    http://ilwebdifabio.it

  9. #9
    Originariamente inviato da blekm
    quindi, anche se fossero vuoti, sono sempre degli array...quindi è una funzione che a me non serve... giusto?
    nel tuo caso serve empty. Prima di una certa versione del php se l'indice fosse stato assente avresti ricevuto un NOTICE, bisognava usare, e si puo' ancora usare ovviamente:

    if(isset($_POST['var']) AND $_POST['var'] != '')

    ora pero', giustamente, empty valuta se il contenuto c'e' oppure no, devi solo considerare che per empty il valore 0 nella variabile viene considerato come vuoto o NULL.

    ti riporto dal manuale (empty):
    Valori restituiti
    Restituisce FALSE se var non è vuota ed ha un valore diverso da zero.

    I seguenti valori sono considerati vuoti:

    "" (stringa vuota)
    0 (0 come intero)
    "0" (0 come stringa)
    NULL
    FALSE
    array() (matrice vuota)
    var $var; (una variabile dichiarata, ma senza valore in una classe)
    per contro isset() da la variabile come settata anche nel caso fosse vuota oppure 0 ecc... cioe' valuta la presenza dell'indice dell'array ed e' per questo che bisogna aggiungere la valutazione del contenuto come vedi nella if postata prima come esempio

    vedi tu quello che e' piu' opportuno per te e cosa ti serve

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

  10. #10
    Utente di HTML.it L'avatar di blekm
    Registrato dal
    Jun 2004
    Messaggi
    8,310
    grazie per l'esaustiva spiegazione...
    hai un mp.
    Il portale sul turismo a Lucca

    Siti web Lucca

    Vendo Tex a colori di Repubblica (primi 100 numeri) - info in pvt.

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.