Area riservata: Parse error

wutangrob

Nuovo Utente
4 Nov 2005
14
0
0
Ciao a tutti,
sto creando una semplice area riservata, ma rilevo un errore potreste aiutarmi a capire dove sto sbagliando. Grazie mille in anticipo, segnalo l’errore:

Parse error: parse error in c:\programmi\easyphp1-8\www\area riservata_02\autentica.php on line 34



Codice:
<?php
//Richiamo il collegamento al database
require('db.php');

//Avvio o continuo la sessione
session_start();

//Otteniamo l'username e la password
$username=$_POST['username'];
$password=$_POST['password'];
$passwd = md5('$password');


//Impostiamo la query...
$querySQL= "SELECT * FROM utenti WHERE
'username' = '$username'
and
' password' = '$passwd' ";

//Eseguiamo la query
$result=mysql_query($querySQL);

//Controllo se la query è andata a buon fine
if(!$result){
die ("Errore nell'esecuzione della query: <br>".mysql_error());
}
$rows=mysql_fetch_array($result);

//Verifico se l'username e la password sono sbagliati
if(mysql_num_rows($result)==0 and $rows['password'] != $passwd
{

//Mandiamo l'errore e terminiamo lo script
die ("Username e/o password errati <br><a href='login.php'>Torna indietro</a>");
}
//Altrimenti...
else
{
//E salviamo i dati in essa
$HTTP_SESSION_VARS['username'] = $username;
$HTTP_SESSION_VARS['password'] = $passwd;

header("Location: riservata.php");
}
mysql_close();
?>
[/code
 
Errore di distrazione o errore di codice?

Errore di distrazione o errore di codice?
Ciao
credo di aver trovato l'errore mancava una parentesi "(" sulla linea

if(mysql_num_rows($result) ==0 and $rows['password']!=$passwd)

ma adesso lo script nn funziona cioè nn fa il login mi dice come da codice che password e username sono sbagliate

qualcuno può darmi qualche consiglio...Forse ho popolato male la tabella utenti?

codice:

<?php
//Richiamo il collegamento al db
require('db.php');

//Popolo la tabella utenti
$querySQL= "INSERT INTO utenti (username , password)
VALUES ('wutangrob', md5('69laotze'))";

//Eseguo la query
$result= mysql_query($querySQL);

//Controllo se la query è andata a buon fine
if(!$result){
die ("Errore nell'esecuzione della query: <br>".mysql_error());
}
?>
 
a Chiunque possa interessare ho risolto così

PHP:
<?php
//Richiamo il collegamento al db
require('db.php');
//avvio o continuo la sessione
session_start();
//Verifico la password l' username
$username=$_POST['username'];
$password=$_POST['password'];
//Controllo se l' username e la password non sono vuoti
if((strlen($username) == 0) and (strlen($password) == 0)){
 echo("Per favore inserisci un'username e una password! ".mysql_error());
}else{
//Imposto la query
$querySQL ="SELECT username, password FROM utenti WHERE username = '".$username."' and '".$password."'";
//Eseguo la query ed effettuo un controllo
$result = mysql_query($querySQL) or die(mysql_error());
//Estrapolo i dati dalla query e controllo se la query è andata a buon fine 
if(mysql_num_rows($result) == 1 ){ 
//Passo l'utente alla sessione
$_SESSION['username'] = $username; 
$_SESSION['password'] = $password; 
//Effettuo il redirect alla pagina riservata
header("Location: riservata.php"); 
exit();    
     
} else {   
die ("Username e/o password errati <br><a href='login.php'>Torna indietro</a>"); 
}  
}              
//Libero la memoria
mysql_free_result($result);
//Effettuo il Logout
if(@$_GET['logout'] == 1){ 
//Desetto tutte le variabili di sessione	
$_SESSION = array(); 
//Distruggo le sessioni
session_destroy(); 
}
//Chiudo la connessione a mysql
mysql_close(); 

?>
 

Discussioni simili