Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 15
  1. #1
    Utente di HTML.it L'avatar di pariri
    Registrato dal
    Jul 2003
    Messaggi
    1,470

    Perché mi da questo errore? $end

    Ciao...
    sto cercando in qualche modo un script per le pagine protette e ho scaricato qui (html.it) questo script che però mi da un errore nella pagina login.php:

    Parse error: syntax error, unexpected $end in /web/htdocs/www.miosito.it/home/a/login.php on line 42

    login.php
    Codice PHP:
    <? session_start(); ?>
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    </head>
    <body>
    <?
    function check($user,$password){
          include(
    "utenti.php");
          foreach(
    $utenti as $user_ => $password_){
             if ((
    $user==$user_) AND ($password==$password_)) {
                return 
    true;
             }
          }
          return 
    false;
    }

    function 
    form_login(){
    ?>
    <form id="login"  method="post">
    <input type="text" name="utente" size="20" /></td>
    <input type="password" name="password" size="20" /></td>
    <input name="submit" type="submit" value="   OK   " />            </td>
    </form>
    <? }

    if(isset(
    $_POST["utente"])){
       if (
    check($_POST["utente"],$_POST["password"])){
          
    $_SESSION["utente"] = $_POST["utente"];
          
    $_SESSION["password"] = $_POST["password"];
       echo
    '<meta HTTP-EQUIV="refresh" content=1;url="index.php">';
        exit;
       }else{
          
    form_login();
       }      
    ?>
    </body>
    </html>
    Perché da questo errore?

    Grazie mille!!!
    La vita è un percorso, goditi il viaggio.

  2. #2
    Non hai chiuso la graffa in fondo.

  3. #3
    Utente di HTML.it L'avatar di pariri
    Registrato dal
    Jul 2003
    Messaggi
    1,470
    Scusami... ma dove?

    Grazie mille!
    La vita è un percorso, goditi il viaggio.

  4. #4
    Codice PHP:
    if(isset($_POST["utente"]))

       if (
    check($_POST["utente"],$_POST["password"])){ 
          
    $_SESSION["utente"] = $_POST["utente"]; 
          
    $_SESSION["password"] = $_POST["password"]; 
       echo
    '<meta HTTP-EQUIV="refresh" content=1;url="index.php">'
        exit; 
       }else{ 
          
    form_login(); 
       }


  5. #5
    Utente di HTML.it L'avatar di pariri
    Registrato dal
    Jul 2003
    Messaggi
    1,470
    Ok... però la pagina non parte... tutto bianco...

    grazie!
    La vita è un percorso, goditi il viaggio.

  6. #6
    Utente di HTML.it L'avatar di jeppox
    Registrato dal
    Mar 2007
    Messaggi
    436
    guarda bene il codice dell'if.

    se $_POST['utente'] è settato fa i controlli che hai detto sopra? e se non è settato? manca quindi un else per il caso che $_POST['utente'] non sia settato appunto, per es. quando la pagina viene visualizzata per la prima volta:

    Codice PHP:
    if(isset($_POST["utente"]))

       if (
    check($_POST["utente"],$_POST["password"]))
       { 
          
    $_SESSION["utente"] = $_POST["utente"]; 
          
    $_SESSION["password"] = $_POST["password"]; 
          echo
    '<meta HTTP-EQUIV="refresh" content=1;url="index.php">'
          exit;
       }
       else
       { 
          
    form_login(); 
       }  
    }     
    else
    {
        
    form_login(); 


  7. #7
    Utente di HTML.it L'avatar di pariri
    Registrato dal
    Jul 2003
    Messaggi
    1,470
    uhm... mi da questo errore:

    Warning: check(utenti.php) [function.check]: failed to open stream: No such file or directory in /web/htdocs/www.miosito.it/home/a/login.php on line 9

    Warning: check() [function.include]: Failed opening 'utenti.php' for inclusion (include_path='.:/php/lib/php/') in /web/htdocs/www.miosito.it/home/a/login.php on line 9

    Warning: Invalid argument supplied for foreach() in /web/htdocs/www.miosito.it/home/a/login.php on line 11


    login.php
    Codice PHP:
    <? session_start(); ?>
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    </head>
    <body>
    <?
    function check($user,$password){
          include(
    "utenti.php");

          foreach(
    $utenti as $user_ => $password_){
             if ((
    $user==$user_) AND ($password==$password_)) {
                return 
    true;
             }
          }

          return 
    false;
    }

    function 
    form_login(){
    ?>
    <form id="login"  method="post">
    <input type="text" name="utente" size="20" /></td>
    <input type="password" name="password" size="20" /></td>
    <input name="submit" type="submit" class="Stile2" value="   OK   " />            </td>
    </form>
    <? }

    if(isset(
    $_POST["utente"]))
    {
       if (
    check($_POST["utente"],$_POST["password"]))
       {
          
    $_SESSION["utente"] = $_POST["utente"];
          
    $_SESSION["password"] = $_POST["password"];
          echo
    '<meta HTTP-EQUIV="refresh" content=1;url="index.php">';
          exit;
       }
       else
       {
          
    form_login();
       }  
    }     
    else
    {
        
    form_login();
    }   
    ?>

    </body>
    </html>

    Grazie!!!
    La vita è un percorso, goditi il viaggio.

  8. #8
    Utente di HTML.it L'avatar di jeppox
    Registrato dal
    Mar 2007
    Messaggi
    436
    ma sei sicuro che utenti.php risieda nella stessa cartella di login.php???

    in tal caso controlla che utenti.php ti restituisca un array $utenti valido, fai un paio di controlli insomma...

    gli altri errori sono una conseguenza del primo, quindi se risolvi il primo, probabilmente hai risolto anche gli altri.

  9. #9
    Utente di HTML.it L'avatar di pariri
    Registrato dal
    Jul 2003
    Messaggi
    1,470
    Si... sulla stessa cartella

    eccoti il utenti.php:
    Codice PHP:
    <?

    $utenti
    ["aaa"] = "bbb";
    $utenti["admin1"] = "pass1";

    ?>
    area_riservata.php
    Codice PHP:
    <?
    session_start
    ();

    if(!isset(
    $_SESSION["utente"])){
       include(
    "login.php");
       die();
    }
    ?>
    e poi login.php
    Codice PHP:
    <? session_start(); ?>
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    </head>
    <body>
    <?
    function check($user,$password){
          include(
    "utenti.php");

          foreach(
    $utenti as $user_ => $password_){
             if ((
    $user==$user_) AND ($password==$password_)) {
                return 
    true;
             }
          }

          return 
    false;
    }

    function 
    form_login(){
    ?>
    <form id="login"  method="post">
    <input type="text" name="utente" size="20" /></td>
    <input type="password" name="password" size="20" /></td>
    <input name="submit" type="submit" class="Stile2" value="   OK   " />            </td>
    </form>
    <? }

    if(isset(
    $_POST["utente"]))
    {
       if (
    check($_POST["utente"],$_POST["password"]))
       {
          
    $_SESSION["utente"] = $_POST["utente"];
          
    $_SESSION["password"] = $_POST["password"];
          echo
    '<meta HTTP-EQUIV="refresh" content=1;url="index.php">';
          exit;
       }
       else
       {
          
    form_login();
       }  
    }     
    else
    {
        
    form_login();
    }   
    ?>


    Grazie!!
    La vita è un percorso, goditi il viaggio.

  10. #10
    Utente di HTML.it L'avatar di jeppox
    Registrato dal
    Mar 2007
    Messaggi
    436
    da quanto capisco, ti trovi su un hosting e non sei in locale e quindi molto probabilmente non puoi modificare il file php.ini. Te lo dico perchè se è cosi dovresti controllare se sul tuo hosting sono attivati gli short_open_tag = On, in caso contrario usa la dicitura completa:

    Codice PHP:
    <?php echo $esempio ?>
    e non
    Codice PHP:
    <?= $esempio ?>

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.