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

    Errore in Session-start

    Salve ragazzi, dovevo inserire uno script per la login...adesso mi appare un errore all'avvio della pagina:

    Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at C:\Programmi\Apache Group\Apache2\htdocs\identificazione\inizia.php:4) in C:\Programmi\Apache Group\Apache2\htdocs\identificazione\check.php on line 2

    Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at C:\Programmi\Apache Group\Apache2\htdocs\identificazione\inizia.php:4) in C:\Programmi\Apache Group\Apache2\htdocs\identificazione\check.php on line 2
    Esempio: login effettuato con successo


    Non capisco qual'è la causa!

    Spero possiate aiutarmi...grazie anticipatamente!
    --Morpheux

  2. #2
    non devi mandare nulla in output prima di session_statr()

  3. #3
    Ti incollo il codice magari se puoi dargli un'okkiata...xke credo di non mandare nulla in output


    Inizia.php
    Codice PHP:
    <? include("check.php"); ?>
    <!doctype html public "-//W3C//DTD HTML 4.0 Transitional//EN">
    <html>
    <head>
    <title> Pagina di test - PHP login </title>
    <meta name="Generator" content="EditPlus">
    <meta name="Author" content="">
    <meta name="Keywords" content="">
    <meta name="Description" content="">
    </head>
    <body>
    Esempio: login effettuato con successo
    </body>
    </html>
    Check.php
    Codice PHP:
    <?php
    session_start
    ();
    if (!
    session_is_registered('autorizzato')) {
      echo 
    "<h1>Area riservata - accesso negato</h1>";
      die;
    }
    ?>
    Login.php
    Codice PHP:
    <?php
    session_start
    ();
    if (isset(
    $_POST["invio"])) {
      
    $puntatore fopen("pasx.txt""r");
      
    $trovato 0;
      while ((!
    feof($puntatore)) && (!$trovato)) {
        
    $linea fgets($puntatore);
        
    $trovato stristr($linea$_POST["userid"]);
        
    $puntatore++;
      }
      
    fclose($puntatore);
      list(
    $nomeutente$password) = split("~:~"$linea);
      if ((
    $trovato)  && ($_POST["passwd"] == trim($password))) {
        
    session_register('autorizzato');
        
    $_SESSION["autorizzato"] = 1;
        
    $destinazione "inizia.php";
      } else {
        
    $destinazione "destroy.php";
      }
      echo 
    '<script language=javascript>document.location.href="'.$destinazione.'"</script>';
    } else {
      
    // HTML ?>
      <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
      <html>
      <head>
      <title>Prova Login php</title>
      <meta name="Generator" content="EditPlus">
      <meta name="Author" content="">
      <meta name="Keywords" content="">
      <meta name="Description" content="">
      </head>
      <body>
      <form method=post action="login.php">
        <table width="300" cellpadding="4" cellspacing="1" border="0">
          <tr>
            <td colspan="2" align="left">
              <u>inserite nome utente e password</u>:
            </td>
          </tr>
          <tr>
            <td>
              nome utente: 
            </td>
            <td>
              <input type="text" name="userid">
            </td>
          </tr>
          <tr>
            <td>
              password: 
            </td>
            <td>
              <input type="password" name="passwd">
            </td>
          </tr>
          <tr>
            <td colspan="2">
              <input type="submit" name="invio" value="invio">
              
              <input type="reset" name="cancella" value="cancella">
            </td>
          </tr>
        </table>
        

      </form>
      </body>
      </html>
    <? //fine HTML
    }
    ?>
    --Morpheux

  4. #4
    L'errore potrebbe essere causato dalla pagina login.php?..ho notato che richiama se stessa ritornando come parametri username e pass...

    Se è questo come posso risolverlo?
    --Morpheux

  5. #5
    up
    --Morpheux

  6. #6
    Ragazzi sò che forse sn diventato stressante...ma ankora nn ho risolto
    Il problema ho capito ke è sulla pagina di login.php xke torna un output in quando rikiama se stessa.
    Ma come posso rimediare?
    --Morpheux

  7. #7
    Utente di HTML.it
    Registrato dal
    May 2006
    Messaggi
    15
    Io ho provato e da me funziona, metti i file php come allegato, perché forse nel copiarli hai cambiato qualcosa.

  8. #8
    Non mi permette di allegare file.php ...ti reincollo il codice della pagina login...

    Codice PHP:
    <?php
    session_start
    ();
    if (isset(
    $_POST["invio"])) {
      
    $puntatore fopen("pasx.txt""r");
      
    $trovato 0;
      while ((!
    feof($puntatore)) && (!$trovato)) {
        
    $linea fgets($puntatore);
        
    $trovato stristr($linea$_POST["userid"]);
        
    $puntatore++;
      }
      
    fclose($puntatore);
      list(
    $nomeutente$password) = split("~:~"$linea);
      if ((
    $trovato)  && ($_POST["passwd"] == trim($password))) {
        
    session_register('autorizzato');
        
    $_SESSION["autorizzato"] = 1;
        
    $destinazione "inizia.php";
      } else {
        
    $destinazione "destroy.php";
      }
      echo 
    '<script language=javascript>document.location.href="'.$destinazione.'"</script>';
    } else {
      
    // HTML ?>
      <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
      <html>
      <head>
      <title>Prova Login php</title>
      <meta name="Generator" content="EditPlus">
      <meta name="Author" content="">
      <meta name="Keywords" content="">
      <meta name="Description" content="">
      </head>
      <body>
      <form method=post action="login.php">
        <table width="300" cellpadding="4" cellspacing="1" border="0">
          <tr>
            <td colspan="2" align="left">
              <u>inserite nome utente e password</u>:
            </td>
          </tr>
          <tr>
            <td>
              nome utente: 
            </td>
            <td>
              <input type="text" name="userid">
            </td>
          </tr>
          <tr>
            <td>
              password: 
            </td>
            <td>
              <input type="password" name="passwd">
            </td>
          </tr>
          <tr>
            <td colspan="2">
              <input type="submit" name="invio" value="invio">
              
              <input type="reset" name="cancella" value="cancella">
            </td>
          </tr>
        </table>
        

      </form>
      </body>
      </html>
    <? //fine HTML
    }
    ?>
    Spero potrai aiutarmi...Grazie ankora....Tony
    --Morpheux

  9. #9
    Utente di HTML.it
    Registrato dal
    May 2006
    Messaggi
    15
    A me funziona, rinomina i file da nome_file.php a nome_file.jpg e riprova ad allegarli.

    PS: Che versione hai di PHP? l'ultima è 5.1.4.

  10. #10
    Ciao Ale, intanto ankora grazie x la disponibilità...
    Ho provato lo script in un dominio che ho per un sito web su aruba...e li funziona perfettamente! Quindi, kome hai gia detto tu, lo script funziona perfettamente!
    Sarà forse la mia versione?Oppure devo abilitare qualcosa su php.ini?

    Ho:
    - PHP 5.1.2
    - Mysql 5.0.19
    - Apache 1.3.34...

    Puo essere la versione?
    --Morpheux

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.