Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 18
  1. #1

    Strano errore su remoto

    Ho studiato a fondo l'articolo sulle sessioni alternative (fantastico)
    e sono riuscito a creare finalmente un pannello di controllo. Funziona benissimo in locale, ma quando lo metto in remoto ho questo errore
    Warning: Cannot modify header information - headers already sent by (output started at /usr/www/htdocs/dominio/include/db_session_class.php:77) in /usr/www/htdocs/dominio/include/db_session_class.php on line 24
    che significa?
    che significa il 77?

  2. #2

    Re: Strano errore su remoto

    Originariamente inviato da webcastell
    Ho studiato a fondo l'articolo sulle sessioni alternative (fantastico)
    e sono riuscito a creare finalmente un pannello di controllo. Funziona benissimo in locale, ma quando lo metto in remoto ho questo errore
    Warning: Cannot modify header information - headers already sent by (output started at /usr/www/htdocs/dominio/include/db_session_class.php:77) in /usr/www/htdocs/dominio/include/db_session_class.php on line 24
    che significa?
    che significa il 77?
    Quell'errore si verifica quando un headers viene inviato prima di iniziare le sessioni (session_start()).

    Ad occhio direi che quella classe dev'essere inizializzata prima di qualunque altra cosa all'interno della pagina php, altrimenti continuerai a trovare errori.

    Il 77 indica che un header è stato inviato dalla riga 77 del db_session_class.php e che poi la sua riga 24 è andata in errore!

    P.S.
    Un pò di inglese non guasta mai!
    [ DarCas The Architect ]
    [ The DarCas Of Blog ]
    Chuck Norris riesce a trovare un pagliaio dentro a un ago
    :maLOL:

  3. #3
    ma io non ho la riga 77

  4. #4
    Semplicemente che l'header della pagina è già stato spedito (headers already sent by ) alla linea 77 nel file db_session_class.php
    cioè almeno un carattere è stato inviato in output.
    Probabilmente l'output è un warning del php basta verificare alla linea suggerita
    In a world without walls and fences - who needs windows and gates ?

  5. #5
    ma perchè in locale funziona tutto?

  6. #6
    Originariamente inviato da webcastell
    ma perchè in locale funziona tutto?
    Sai cos'è?
    La maggior parte di noi non ha doni di prescienza, quindi se non vede il codice difficilmente può continuare a postare qualcosa!
    [ DarCas The Architect ]
    [ The DarCas Of Blog ]
    Chuck Norris riesce a trovare un pagliaio dentro a un ago
    :maLOL:

  7. #7
    si scusami ora lo posto



    File login
    <?
    require('../include/db_session_class.php');

    $db = mysql_connect($db_host, $db_user, $db_password);
    if ($db == FALSE)
    die ("Errore nella connessione. Verificare i parametri nel file config.inc.php");
    mysql_select_db($db_name, $db)
    or die ("Errore nella selezione del database. Verificare i parametri nel file config.inc.php");

    $my_session = new my_session($session_time, $session_gc_time);

    $my_session->my_session_start();

    $my_session->my_session_gc();

    //grafica ecc
    include("../include/w_header.php");
    .
    .
    .


    classe
    <?php

    require('../include/config.inc.php');

    class my_session {

    var $my_session_id;
    var $session_time;
    var $session_gc_time;


    function my_session($session_time, $session_gc_time) {
    $this->my_session_id = (!isset($_COOKIE['my_session_id']))
    ? md5(uniqid(microtime()))
    : $_COOKIE['my_session_id'];
    $this->session_time = $session_time;
    $this->session_gc_time = $session_gc_time;
    }


    function my_session_start() {
    $cookie_expire = ($this->session_time > 0) ? (time() + $this->session_time) : 0;
    if(!isset($_COOKIE['my_session_id'])) {
    setcookie('my_session_id', $this->my_session_id, $cookie_expire);
    mysql_query("INSERT INTO my_session VALUES('" . $this->my_session_id . "', '', " . time() . ")");
    } else {
    if($this->session_time > 0)
    setcookie('my_session_id', $this->my_session_id, $cookie_expire);
    }
    }

    function my_session_register($name, $value) {
    $_MY_SESSION = array();
    $session_query = mysql_query("SELECT session_vars FROM my_session
    WHERE sessid = '{$this->my_session_id}'");
    if(mysql_num_rows($session_query) > 0) {
    $result = mysql_fetch_array($session_query);
    $_MY_SESSION = unserialize($result['session_vars']);
    $_MY_SESSION[$name] = $value;
    mysql_query("UPDATE my_session SET session_vars = '" . serialize($_MY_SESSION) . "'
    WHERE sessid = '{$this->my_session_id}'");
    } else {
    $_MY_SESSION[$name] = $value;
    mysql_query("UPDATE my_session SET session_vars = '" . serialize($_MY_SESSION) . "'
    WHERE sessid = '{$this->my_session_id}'");
    }
    }

    function my_session_read($key = '') {
    $session_query = mysql_query("SELECT session_vars FROM my_session
    WHERE sessid = '{$this->my_session_id}'");
    if(mysql_num_rows($session_query) > 0) {
    $result = mysql_fetch_array($session_query);
    $session_vars = unserialize($result['session_vars']);
    return (isset($key) && $key) ? $session_vars[$key] : $session_vars;
    }
    }

    function my_session_destroy() {
    mysql_query("UPDATE my_session SET session_vars = ''
    WHERE sessid = '{$this->my_session_id}'");
    }

    function my_session_gc() {
    mysql_query("DELETE FROM my_session
    WHERE session_date < " . (time() - $this->session_gc_time));
    }

    }
    ?>

  8. #8
    Cosa c'è in require('../include/config.inc.php')?

    Ci dev'essere qualcosa che genera testo che viene inviato alla pagina e/o headers...
    [ DarCas The Architect ]
    [ The DarCas Of Blog ]
    Chuck Norris riesce a trovare un pagliaio dentro a un ago
    :maLOL:

  9. #9
    config.inc.php

    // valori espressi in secondi
    $session_time = 0;
    $session_gc_time = 1800; n

    // parametri del database
    $db_host = "xxxxxxx";
    $db_user = "xxxxxxxxx";
    $db_password = "xxxxxxxxx";
    $db_name = "xxxxxxxxxxxx";

  10. #10
    Originariamente inviato da webcastell
    config.inc.php

    // valori espressi in secondi
    $session_time = 0;
    $session_gc_time = 1800; n

    // parametri del database
    $db_host = "xxxxxxx";
    $db_user = "xxxxxxxxx";
    $db_password = "xxxxxxxxx";
    $db_name = "xxxxxxxxxxxx";
    Cos'è quella n dopo $session_gc_time = 1800;?
    [ DarCas The Architect ]
    [ The DarCas Of Blog ]
    Chuck Norris riesce a trovare un pagliaio dentro a un ago
    :maLOL:

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.