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

    errore header information, ma non c'è output precedente

    ciao, ricevo il classico errore header information. Ho letto vari post e ho capito che deriva da output precedente, ma io le ho provate tutte e non sono riuscito a risolvere. Premetto che sono alle prime armi e non nemmeno la certezza che lo script sia corretto. Qualcuno può dirmi come risolvere l'errore?
    Codice PHP:
    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
    Posta il messaggio di errore completo visualizzato da PHP. Al suo interno c'è scritto dove inizia l'output.

  3. #3
    Utente di HTML.it L'avatar di gabar-el
    Registrato dal
    Jun 2006
    Messaggi
    2,222
    codice:
    Warning: Cannot modify header information - headers already sent by (output started at C:\Programmi\Apache Software Foundation\Apache2.2\htdocs\*****\gestione\elabora_gestione_cancella.php:22) in C:\Programmi\Apache Software Foundation\Apache2.2\htdocs\*****\gestione\elabora_gestione_cancella.php on line 118
    Si fanno sempre nuove scoperte

  4. #4
    output started at C:\Programmi\Apache Software Foundation\Apache2.2\htdocs\******\gestione\elabor a_gestione_cancella.php:22
    Controlla la riga 22 del file ******\gestione\elabora_gestione_cancella.php

  5. #5
    Utente di HTML.it L'avatar di gabar-el
    Registrato dal
    Jun 2006
    Messaggi
    2,222
    avevo già provato a seguire il messaggio di errore, ma la riga 22 è questa:
    codice:
    <div id="testa">
    a inizio pagina ho invece un session start, ma mi pare sia tutto ok, non ci sono spazi o altro:
    Codice PHP:
    <?php
    session_start
    ();
    if(empty(
    $_SESSION['user_loggato']))
        {
            die(
    "Devi prima effettuare il login");
        }
    ?>
    Si fanno sempre nuove scoperte

  6. #6
    La riga che hai indicato e' effettivamente dell'output.

  7. #7
    Utente di HTML.it L'avatar di gabar-el
    Registrato dal
    Jun 2006
    Messaggi
    2,222
    ok, se è così allora ho un sacco di output prima del codice, ma come risolvo? ho già provato a mettere il codice subito dopo il session start (in teoria non dovrei avere output), ma non cambia nulla, ricevo sempre un errore del genere....
    grazie
    Si fanno sempre nuove scoperte

  8. #8
    Se sposti il codice, allora e' probabile che l'errore non sia esattamente lo stesso, ma che l'output sia presente in un altro punto.

    In alternativa inserisci all'inizio dello script ob_start();

  9. #9
    Utente di HTML.it L'avatar di gabar-el
    Registrato dal
    Jun 2006
    Messaggi
    2,222
    cosa fa ob_start()?
    Si fanno sempre nuove scoperte

  10. #10

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.