Visualizzazione dei risultati da 1 a 3 su 3

Discussione: Script con errore

  1. #1
    Utente di HTML.it L'avatar di Ironmax
    Registrato dal
    Dec 2008
    Messaggi
    1,026

    Script con errore

    Salve.
    Sto tentando di capire dove sia e quale sia l'errore in questo script per fare il login:
    codice:
    <?php
    require 'formhelpers.php';
    // Questo è identico alla funzione input_text() in formhelpers.php ma
    // stampa una casella di password in cui gli asterischi nascondono quanto
    // inserito, invece di un normale campo di testo
    function input_password($field, $value){
    print '<input type="password" name=""'. $field_name.'"value="';
    print htmlentities($value[$field_name]) . '">';
    //----------
    session_start();
    if ($_POST['_submit_check']){
    	if ($form_errors = validate_form()){
    		show_form($form_errors);
    		}else{
    			process_form();
    		}
    	}else{
    		show_form();
    	}
    //--------
    	function show_form($errors =''){
    	print '<form method="POST" action="'.$_SERVER['PHP_SELF'].'">';
    	if ($errors){
    		print '<ul>[*]';
    		print implode('[*]',$errors);
    		print '[/list]';
    		}
    	print 'Username: ';
    	input_text('username', $_POST);
    	print '</br>';
    	print 'Password: ';
    	input_password('password', $_POST);
    	print '</br>';
    	input_submit('submit', 'Log In');
    	print '<input type="hidden" name="_submit_check" value="1"/>';
    	print '</form>';
    	}
    //------
    	function validate_form(){
    	$errors = array();
    	// Alcuni nomi utenti e passwords di esempio
    	$users = array('alice' => 'dog123',
    					'bob' => 'my^pwd',
    					'charlie' => '**fun**');
    //----- Controlla che il nome utente sia valido
    	if (! array_key_exists($_POST['username'], $users)){
    		$errors[] = 'Please, enter valid username and password.';
    	}		
    //-----  Vede se la password è corretta
    	$saved_password = $users[$_POST['username']];
    	if (saved_password != $_POST['password']){
    		$errors[] = 'Please, enter valid username and password.';
    	}
    	return $errors;
    	}
    //--------// Aggiunge il nome utente alla sessione
    	function process_form(){
    	$_SESSION['username']= $_POST['username'];
    	print 'Welcome, '. $_SESSION['username'];
    	}
    ?>
    L'errore che genera è questo:
    codice:
    Parse error: syntax error, unexpected $end in C:\Xampp_7\xampp\htdocs\login\login.php on line 65
    Praticamente sull'ultima riga.
    Grazie di qualsiasi consiglio.

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    Mi sa che ti manca una } alla fine che chiuda
    if ($_POST['_submit_check']){

  3. #3
    In relatà chiude la funzione input_password, se aggiungi una graffa alla fine...il che è piuttosto bislacco.
    Manca la chiusura di una graffa ma alla fine della prima funzione

    Codice PHP:
    require 'formhelpers.php';
    // Questo è identico alla funzione input_text() in formhelpers.php ma
    // stampa una casella di password in cui gli asterischi nascondono quanto
    // inserito, invece di un normale campo di testo
    function input_password($field$value){
        print 
    '<input type="password" name=""'$field_name.'"value="';
        print 
    htmlentities($value[$field_name]) . '">';
    // <--- manca questa!!
    //---------- 

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.