Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1
    Utente di HTML.it L'avatar di gabar-el
    Registrato dal
    Jun 2006
    Messaggi
    2,222

    errore dice che $_POST id è inesistente, ma a me non torna....

    ciao, sto implementando per la prima volta un codice che permette di cancellare i dati di un db. purtroppo riceovo questo errore quando provo a inviare senza che nessun id sia selezionato (giusto per verfica):
    codice:
    Notice: Undefined index: id in C:\Programmi\Apache Software Foundation\Apache2.2\htdocs\miacartella\gestione\elabora_gestione_cancella.php on line 29
    NULL
    la linea 29 è questa:
    Codice PHP:
    var_dump($_POST['id']); 
    da ciò che capisco l'errore mi dice che $_POST['id'] non esiste, ma non capisco perchè....

    questo il codice che della pagina che elabora il form:
    Codice PHP:
    error_reporting(E_ALL); 
    ini_set('display_errors'1);
    var_dump($_POST['id']);
                    if(
    $_POST)
                    {
                        
    $ids = isset($_POST['id']) ? $_POST['id'] : array();
                        
    elimina_record($ids);
                    }
                            
                    function 
    elimina_record($ids)
                    {
                        if(
    count($ids) < 1)
                        {
                            
    $messaggio urlencode("Nessuna voce selezionata!");
                            
    header('location: '.$_SERVER['PHP_SELF'].'?msg='.$messaggio);
                            exit;
                        }
                        
                        
    // per precauzione converto gli ID in interi
                        
    $ids array_map('intval',$ids);
                        
                        
    // creo una lista di ID per la query
                        
    $ids implode(',',$ids);
                        
                        
    // preparo la query
                        
    $sql "DELETE FROM circolari WHERE id IN ($ids)";
                        
                        
    // invio la query
                        
    $result mysql_query($sql);
                        
                        
    // controllo l'esito
                        
    if (!$result) {
                            die(
    "Errore nella query $sql: " mysql_error());
                        }
                          
                        
    // conto il numero di record cancellati
                        
    $num_record mysql_affected_rows();
                        
                        
    // chiudo la connessione a MySQL
                        
    mysql_close($link);
                        
                        
    $messaggio urlencode("Numero voci cancellate: $num_record");
                        
    header('location: '.$_SERVER['PHP_SELF'].'?msg='.$messaggio);
                    } 
    grazie
    Si fanno sempre nuove scoperte

  2. #2

  3. #3
    Utente di HTML.it L'avatar di gabar-el
    Registrato dal
    Jun 2006
    Messaggi
    2,222
    ma non è una soluzione! o sbaglio? la riga 29 fa si che mi dica che c'è un problema (o no?) che appunto è che id non esiste. cmq avevo già provato e non ricevo errori infatti, ma non ricevo nemmeno il messaggio che "nessun id è stato selezionato".... :master:
    Si fanno sempre nuove scoperte

  4. #4
    Nel codice che hai postato non c'è nessuna riga dove viene visualizzato tale messaggio.

  5. #5
    Utente di HTML.it L'avatar di gabar-el
    Registrato dal
    Jun 2006
    Messaggi
    2,222
    non è questo?
    if(count($ids) < 1)
    {
    $messaggio = urlencode("Nessuna voce selezionata!");
    header('location: '.$_SERVER['PHP_SELF'].'?msg='.$messaggio);
    exit;
    }
    se non è questo, allora ti spiacerebbe spiegarmi a cosa serve questo codice?
    grazie
    Si fanno sempre nuove scoperte

  6. #6
    Questo codice effettua SOLO il redirect, NON visualizza alcunchè.

  7. #7
    Per capire il tuo problema, studiati questo codice:

    Codice PHP:
    Test 1:
    <form method="post">
    <input type="submit" />
    </form>


    Test 2:
    <form method="post">
    <input type="submit" name="submit" />
    </form>
    <?php 
    if ($_POST) {
        die(
    "Here it is");

    ?>

  8. #8
    Utente di HTML.it L'avatar di gabar-el
    Registrato dal
    Jun 2006
    Messaggi
    2,222
    e nessuna voce selezionata quando dovrebbe apparire allora?
    grazie, lo farò...
    Si fanno sempre nuove scoperte

  9. #9
    Utente di HTML.it L'avatar di gabar-el
    Registrato dal
    Jun 2006
    Messaggi
    2,222
    non ho capito il tuo codice..... :master:

    cmq quel famigerato codice non dovrebbe restituire un messaggio? c'è anche una variabile che si chiama così.....

    a parte tutto togliendo la riga in questione non credo che risolverò il mio problema...
    ora faccio un paio di verifiche poi torno a rompere....
    Si fanno sempre nuove scoperte

  10. #10
    Clicca sul primo pulsante e controlla il risultato.
    Clicca sul secondo pulsante e controlla il risultato.

    Poi cerca di capire per quale motivo il comportamento e' diverso nei due casi.

    Ti do un aiuto, che cosa dovrebbero restituire questi due esempi (prova a rispondere senza eseguirli)?

    Codice PHP:
    <?php 
    $array 
    = array();
    $result = (bool)$array;
    var_dump($result);
    ?>


    <?php
    $array 
    = array('test');
    $result = (bool)$array;
    var_dump($result);
    ?>

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.