like e log

Trapano

Utente Attivo
27 Set 2012
238
0
16
45
Qualcuno saprebbe dirmi cosa c'è di sbagliato in questo script?

PHP:
<?php

include_once ("config.php");  
include_once ("connect.php");
 
 mysql_connect(localhost,$DB_user,$DB_password);
 @mysql_select_db($DB_name) or die("Impossibile selezionare il database."); 
 
 $query="SELECT * FROM oggetti WHERE id LIKE '180' "; 
 $risultati=mysql_query($query); 
 $num=mysql_numrows($risultati); 
mysql_close();  
 $i=0; 
 while ($i < $num) { 
     $psw=mysql_result($risultati,$i,"psw");
$usern= $psw; 
$passw= '123'; 
     $i++; 
 } 
 ?>

Se lo provo da solo, con un echo mi restituisce il valore che ho impostato nel db... ma se lo uso per accedere al login non mi fa entrare.
 

Trapano

Utente Attivo
27 Set 2012
238
0
16
45
Rieccomi.... dunque.. ho tre file per un login..
il primo:
PHP:
<form method=POST action=login.php target="_top">
<input type=password name=user  size=20>
<input type=password name=pass  size=20><br>
<input type=submit value=Login>
<input type=reset value=Reset></form>

che richiama il secondo:
PHP:
<?

session_start();
include 'conf.php';
$user= $_POST['user'];
$pass= $_POST['pass'];

if((!$user) || (!$pass)){
echo "Inserire tutte le informazioni!";
header("Location: login.htm");
}else{
if($user==$usern && $pass==$passw){ 
$_SESSION['username'] = $usern;
header("Location: form.php");
}else{ 
header("Location: login.htm");
}
}
?>

e il file conf.php dove metto le psw:
PHP:
<?

$usern= 'ciao';
$passw= 'hola';

?>

Così tutto funziona...
Ma vorrei che le psw fossero in una tabella nel mio db.
Per cui vorrei modificare il file conf.php dicendogli di andare a prendere le psw nella tabella xxx che ha solo i campi id e psw.
Per cui in login.htm dovrei/vorrei digitare nel campo user, l'id che sarà 1 o 2 o 3 ecc... e nel campo pass il corrispondente psw.
Spero di essermi spiegato.
In questo modo sarebbe possibile entrare con 1 e campo corrispondente al 1, con 2 e campo corrispondente al 2 ecc...
 

alessandro1997

Utente Attivo
6 Ott 2009
5.302
1
0
24
Roma
alessandro1997.netsons.org
Dunque elimina completamente il file conf.php e modifica così login.php:
PHP:
<?php
session_start();

$user = isset($_POST['user']) ? trim($_POST['user']) : '';
$pass = isset($_POST['pass']) ? trim($_POST['pass']) : '';

if ('' == $user || '' == $pass) {
    header('Location: login.htm');
    exit();
}

try {
    $pdo = new PDO('mysql:host=localhost;dbname=test', 'root', 'password');
} catch (PDOException $e) {
    header('Location: login.htm');
    exit();
}

$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

$stm = $pdo->prepare('SELECT * FROM tabella WHERE id = ? AND psw = ?');

try {
    $stm->execute(array($user, $pass));
} catch (PDOException $e) {
    header('Location: login.htm');
    exit();
}

if ($stm->rowCount() == 0) {
    header('Location: login.html');
    exit();
}

$_SESSION['username'] = $user;

header('Location: form.php');
Dovresti aggiungere:
  • una gestione decente degli errori: ora l'utente viene solo reindirizzato alla pagina di login senza avere idea di cosa sia accaduto;
  • l'hashing delle password: salvare le password in chiaro è pericolosissimo;
 
Ultima modifica:

Trapano

Utente Attivo
27 Set 2012
238
0
16
45
ho copiato pari pari... aggiunto alla fine ?>
Ho inserito db name, passord ecc... ma non mi fa entrare... :-(
 
Discussioni simili
Autore Titolo Forum Risposte Data
trattorino [Javascript] come capire procedimento log user Javascript 2
A [PHP] Generazione Log modifiche Database PHP 5
bubino8 [PHP] Controllo Log e Modifiche Utenti PHP 5
felino [WordPress] File di log degli errori WordPress 6
H Interpretare e leggere il file log di sfc/scannow. Windows e Software 0
S [PHP] Algoritmo log in e out PHP 2
R [PHP] Software gestione interventi e creazione registro (log) PHP 1
L [WordPress] Problema Javascript nel log del browser WordPress 1
localhost.nicola File log erroe con phpmailer PHP 3
novello88 Joomla su VPS OVH: non funziona nulla ma nessun errore nel log Server Dedicati e VPS 1
P File di log personalizzato PHP 4
L LOG4J in a tomcat webapplication on a server doesn't create log file Web Server 0
Licantropo Log delle operazioni sul server Apache 0
L Form di registrazione e log in. PHP 2
I log di un router Reti LAN e Wireless 6
T [Microsoft SQL Server 2008 (SP3)] log delle transazioni è pieno Database 1
F log pagina administrator bianca Joomla 0
S Aiuto cookie e log-in PHP 0
D log in all’apertura del browser PHP 2
S Log login area privata PHP 6
Monital Creazione file log personalizzato PHP 14
S piccola info su log utenti PHP 0
C Effettuare il log out alla chiusura del browser PHP 3
F log in php a gioco PHP 11
R Analisi dei log PHP 1
T controllare gli errori nel log di php PHP 1
S php error log PHP 1
X consultare un log PHP 0
A Log PHP 4
C php: al download di un file scrivere il log su file esterno. PHP 1
marlenka Log in Classic ASP 6
T Errore in Log In PHP 0
I Analizzare file log. ASP.NET 1
D Home Pge log-in forum HTML e CSS 0
M [PHP-MYSQL]{Auto log out} PHP 3
P HIJACK log, datemi un okkiatina Sicurezza e Virus 2
peppoweb Un bug blocca a distanza il log di Apache HTTP Server Sicurezza e Virus 0

Discussioni simili