login sempre dati nn corretti postato il 04/04/2006 15:42:53 nel forum programmazione, gdrcd e open source
ho usato il grd traimo, ma nn mi da il login del pg , il codice provoo a postarvelo , spero che mi potete aiutare, nn mi da errori,mi dice solo dati nn corretti.
Pagina del login
<?PHP
session_start();
include "config.inc.php";
include "config.inc.php";
//DISTRUZIONE DELLA VECCHIA SESSIONE
if ($_SESSION[USERNAME] != ``){
$sql = "DELETE FROM ONLINE WHERE USER_ONLINE=`$_SESSION[USERNAME]`";
$query = mysql_query ($sql, $connessione);
session_unset();
session_destroy();
}
else {}
//FINE DISTRUZIONE DELLA VECCHIA SESSIONE
/*GESTIONE SECURE CODE*/
function randomCode () {
$length ="8";
$possible = `23456789` .
`abcdefghijkmnpqrstuvwxyz` .
`ABCDEFGHJKLMNPQRSTUVWXYZ`;
$str ="";
while (strlen($str) < $length) {
$str.=substr($possible, (rand() % strlen($possible)),1);
}
return($str);
}
$SECURE=randomCode();
?>
<html>
<head>
<title>Documento senza titolo</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link href="css/davide.css" rel="stylesheet" type="text/css">
<script language="JavaScript">
function checkform(){
if (document.form1.SECURE.value=`<?=$SECURE?>`) {
document.form1.USERNAME.disabled=false;
document.form1.PASS.disabled=false;
} else {
document.form1.USERNAME.disabled=true;
document.form1.PASS.disabled=true;
}
}
function aprifin(theURL,winName,features) { //v2.0
window.open(theURL,winName,features);
}
function Controlla_Campi()
{
if (document.form1.USERNAME.value=="")
{
alert ("E` obbligatorio inserire un nickname!");
document.form1.USERNAME.focus();
return false;
}
if (document.form1.PASS.value=="")
{
alert ("E` obbligatorio inserire una password!");
document.form1.PASS.focus();
return false;
}
else
{
return true;
}
}
</script>
<script language="JavaScript1.2">
top.window.moveTo(0,0);
if (document.all) {
top.window.resizeTo(screen.availWidth,screen.availHeight);
}
else if (document.layers::document.getElementById) {
if (top.window.outerHeight<screen.availHeight::top.window.outerWidth<screen.availWidth){
top.window.outerHeight = screen.availHeight;
top.window.outerWidth = screen.availWidth;
}
}
</script>
</head>
<body>
<br>
<br>
<br>
<form name="form1" method="post" action="do_login.php">
<table width="49%" border="0" align="center" cellpadding="0">
<tr>
<td colspan="2"> <div align="center">Entra in Afterward </div></td>
</tr>
<tr>
<td width="52%"> </td>
<td width="48%"> </td>
</tr>
<tr>
<td><div align="right">Username:</div></td>
<td><input name="USERNAME" type="text" id="USERNAME" size="20" class="form" disabled="true"> </td>
</tr>
<tr>
<td><div align="right">Password</div></td>
<td><input name="PASS" type="password" class="form" id="PASS" size="20" disabled="true"></td>
</tr>
<tr>
<td><div align="right">Codice di sicurezza</div></td>
<td><div align="center"><?=$SECURE?>
</div></td>
</tr>
<tr>
<td><div align="right">Importa il codice di sicurezza </div></td>
<td><input name="SECURE" type="text" class="form" id="SECURE" size="20" onClick="Javascript:checkform();" readonly="true"></td>
</tr>
<tr>
<td colspan="2"><div align="center">
<input type="submit" value="Accedi" class="form" name="submit">
</div></td>
</tr>
<tr>
<td colspan="2"> </td>
</tr>
<tr>
<td colspan="2"><div align="center">Hai perso la password? recuperala</div></td>
</tr>
</table>
<b></b>
</form>
</body>
</html>
pagina do_login
<?PHP
include "config.inc.php";
$USERNAME=$_POST[`USERNAME`];
$PASS=$_POST[`PASS`];
$sqlonline = "SELECT USER_ONLINE,VER_ONLINE FROM ONLINE WHERE USER_ONLINE = `$USERNAME`";
$contonline = mysql_query($sqlonline) or die(mysql_error());
$numonline = mysql_num_rows($contonline);
// Utente non online
if ($numonline == 0)
{
/*GESTIONE DATA DI INGRESSO*/
// setto data e ora in base alla linga locale
setlocale (LC_TIME,"it_IT");
// metto data e ora in un array
$DATA1 = time();
$date_time_array = getdate($DATA1);
$hours = $date_time_array[`hours`];
$minutes = $date_time_array[`minutes`];
$seconds = $date_time_array[`seconds`];
$month = $date_time_array[`mon`];
$day = $date_time_array[`mday`];
$year = $date_time_array[`year`];
$DATA1 = mktime($hours,$minutes,$seconds,$month,$day,$year);
//echo strftime(`%H : %M - %A %d %B %Y`,$DATA_PROBLEMA);
//fine formattazione data
$DATAINGWAR = strftime(`%H : %M - %d/%m/%y`,$DATA1);
$sql = "SELECT USERS.ID_USER,USERS.USERNAME,USERS.PASS,USERS.CORPORAZIONE_TIPO,USERS.STATO_TIPO,USERS.FUNZIONE_TIPO,USERS.MAILREG,USERS.URLAVATAR,USERS.URLMIDI,USERS.SESSO,USERS.URLSESSO,USERS.RAZZA,USERS.FORZA,USERS.INTELLIGENZA,CORPORAZIONI.CORPORAZIONE,CORPORAZIONI.CARICA,CORPORAZIONI.SIMBOLO,FUNZIONI.FUNZIONE,STATO.STATO FROM USERS
INNER JOIN CORPORAZIONI
ON USERS.CORPORAZIONE_TIPO = CORPORAZIONI.ID_CORPORAZIONE
INNER JOIN FUNZIONI
ON USERS.FUNZIONE_TIPO = FUNZIONI.ID_FUNZIONE
INNER JOIN STATO
ON USERS.STATO_TIPO = ID_STATO
WHERE USERNAME = `$USERNAME` AND PASS = `$PASS`";
$conteggio = mysql_query($sql,$connessione)or die(mysql_error());
$num = mysql_num_rows($conteggio);
//Dati di login corretti
if ($num == 1)
while($ROW = mysql_fetch_array($conteggio))
{
//DATI GENERALI DEL PG
$ID_USER=$ROW["ID_USER"];
$USERNAME=$ROW["USERNAME"];
$PASS=$ROW["PASS"];
$URLAVATAR=$ROW["URLAVATAR"];
$URLMIDI=$ROW["URLMIDI"];
$SESSO=$ROW["SESSO"];
$URLSESSO=$ROW["URLSESSO"];
$RAZZA=$ROW["RAZZA"];
//DATI SULLA CORPORAZIONE
$CORPORAZIONE_TIPO=$ROW["CORPORAZIONE_TIPO"];
$CORPORAZIONE=$ROW["CORPORAZIONE"];
$CARICA=$ROW["CARICA"];
$SIMBOLO=$ROW["SIMBOLO"];
//DATI SULLO STATO
$STATO_TIPO=$ROW["STATO_TIPO"];
$STATO=$ROW["STATO"];
//DATI SULLA FUNZIONE
$FUNZIONE_TIPO=$ROW["FUNZIONE_TIPO"];
$FUNZIONE=$ROW["FUNZIONE"];
//STATISTICHE DEL PG
$FORZA=$ROW["FORZA"];
$INTELLIGENZA=$ROW["INTELLIGENZA"];
//*************sessione*****************
session_start();
session_unset();
session_destroy();
session_start();
$_SESSION[`ID_USER`]=$ID_USER;
$_SESSION[`USERNAME`]=$USERNAME;
$_SESSION[`PASS`]=$PASS;
$_SESSION[`URLAVATAR`]=$URLAVATAR;
$_SESSION[`URLMIDI`]=$URLMIDI;
$_SESSION[`SESSO`]=$SESSO;
$_SESSION[`URLSESSO`]=$URLSESSO;
$_SESSION[`RAZZA`]=$RAZZA;
$_SESSION[`CORPORAZIONE_TIPO`]=$CORPORAZIONE_TIPO;
$_SESSION[`CORPORAZIONE`]=$CORPORAZIONE;
$_SESSION[`CARICA`]=$CARICA;
$_SESSION[`SIMBOLO`]=$SIMBOLO;
$_SESSION[`STATO_TIPO`]=$STATO_TIPO;
$_SESSION[`STATO`]=$STATO;
$_SESSION[`FUNZIONE_TIPO`]=$FUNZIONE_TIPO;
$_SESSION[`FUNZIONE`]=$FUNZIONE;
$_SESSION[`FORZA`]=$FORZA;
$_SESSION[`INTELLIGENZA`]=$INTELLIGENZA;
//DATI SUGLI ONLINE
$_SESSION[`LOCAZIONE`]=`Mappa`;
$_SESSION[`LAST`]=`login.php`;
//*************sessione*****************
// Stato = Libero o Arrestato
if ($STATO_TIPO == `1` OR $STATO_TIPO == `2`)
{
//AGGIORNAMENTO TABELLA USERS
$sql = "UPDATE USERS SET DATAINGRESSO=`$DATAINGWAR`,INGRESSOIP=`$_SERVER[REMOTE_ADDR]` WHERE USERNAME=`$USERNAME`";
$query = @mysql_query ($sql, $connessione)or die(mysql_error());
//FINE AGGIORNAMENTO TABELLA USERS
//INSERIMENTO NEGLI ONLINE
$TIMESTAMP = time();
$sqlupd = "INSERT INTO ONLINE (USER_ONLINE,SESSO_ONLINE,SIMB_ONLINE,LUOGO_ONLINE,STATO_ONLINE,LAST_ONLINE,VER_ONLINE) VALUES (`$_SESSION[USERNAME]`,`$_SESSION[URLSESSO]`,`$_SESSION[SIMBOLO]`,`$_SESSION[LOCAZIONE]`,`$_SESSION[STATO]`,`$_SESSION[LAST]`,`$TIMESTAMP`)";
$queryupd = @mysql_query ($sqlupd, $connessione)or die(mysql_error());
if ($STATO_TIPO == `1`)
{
header("Location: main.php");
}
else if ($STATO_TIPO == `2`)
{
$_SESSION[`LOCAZIONE`]=`Prigione`;
$_SESSION[`LAST`]=`ChatFrameSet.php?LOCAZIONE=Prigione`;
header("Location: main2.php");
}
}
// Stato = Esiliato
else if ($STATO_TIPO == `3`)
{
session_start();
session_unset();
session_destroy();
echo "<link rel=`stylesheet` href=`css/davide.css` type=`text/css`>";
echo "<div align=center class=RedTit>Sei stato esiliato.</div>";
echo "<br>";
echo "<br>";
echo "<div align=center><a href=`login.php`>Torna alla pagina di login</a></div>";
}
// Stato = Manutenzione
else if ($STATO_TIPO == `4`)
{
session_start();
session_unset();
session_destroy();
echo "<link rel=`stylesheet` href=`css/davide.css` type=`text/css`>";
echo "<div align=center class=RedTit>Spiacente, ma l`accesso è consentito solo allo staff.<br>Tutti gli utenti verranno avvisati della riapertura tramite una newsletter.<br>Torna presto a trovarci ^___*</div>";
echo "<br>";
echo "<br>";
echo "<div align=center><a href=`login.php` c >Torna alla pagina di login</a></div>";
}
}
//Dati di login sbagliati
else if ($num == 0)
{
echo "<link rel=`stylesheet` href=`stile.css` type=`text/css`>";
echo "<div align=center class=RedTit>Accesso non consentito.<br>I dati inseriti non sono corretti.</div>";
echo "<br>";
echo "<br>";
echo "<div align=center><a href=`login.php` class=`standard`>Torna alla pagina di login</a></div>";
}
}
// Utente online o sessione non scaduta
else if ($numonline == 1)
while($ROW2 = mysql_fetch_array($contonline))
{
$USER_ONLINE=$ROW2["USER_ONLINE"];
$VER_ONLINE=$ROW2["VER_ONLINE"];
$DIFFERENZA = $TIMESTAMP - $VER_ONLINE;
// La sessione è scaduta, l`utente non è collegato ed occorre aggiornare le variabili locali e di server
if ($DIFFERENZA > 70)
{
session_start();
session_unset();
session_destroy();
$sql = "DELETE FROM ONLINE WHERE USER_ONLINE=`$USERNAME`";
$query = mysql_query ($sql, $connessione)or die(mysql_error());
echo "<link rel=`stylesheet` href=`stile.css` type=`text/css`>";
echo "<div align=center class=RedTit>Per ragioni di sicurezza sei pregato di reinserire i tuoi dati.</div>";
echo "<br>";
echo "<br>";
echo "<div align=center><a href=`login.php` class=`standard`>Torna alla pagina di login</a></div>";
}
// La sessione è attiva, l`utente è collegato
else if ($DIFFERENZA < 70)
{
echo "<link rel=`stylesheet` href=`css/davide.css` type=`text/css`>";
echo "<div align=center class=RedTit>Attenzione: l`utente risulta online.<br>Riprova ad accedere fra 60 secondi.</div>";
echo "<br>";
echo "<br>";
echo "<div align=center><a href=`login.php` class=`standard`>Torna alla pagina di login</a></div>";
}
}
@mysql_close ($connessione);
?>
Perchè mi da sempre dati errati?
Pagine → 1
04/04/2006 16:32:03
l`errore viene dato quando la query al DataBase dove viene cercato il tuo nick e la tua pass non restituisce nessun risultato (ovvero quando nel Database non è presente un personaggio con quei nick e pass) quindi secondo me (che non ho mai usato l`OS di Traimo) dovresti controllare di avere inserito bene il personaggio dal database.
04/04/2006 19:35:47
Ho controllato il nick e la password sono corretti.
Sembrerebbe dallo script nessun errore anch`io avevo pensato al problema fosse del db
i campi sono questi
ALTER TABLE `USERS` ADD FULLTEXT (
`ID_USER` ,
`CORPORAZIONE_TIPO` ,
`STATO_TIPO` ,
`FUNZIONE_TIPO` ,
`USERNAME` ,
`PASS` ,
`MAILREG` ,
`URLAVATAR` ,
`URLMIDI` ,
`SESSO` ,
`URLSESSO` ,
`ESPERIENZA` ,
`COGNOME` ,
`MIDI` ,
`LUOGO` ,
`ETA` ,
`RAZZA` ,
`CLAN` ,
`MOTTO` ,
`STORIA` ,
`SITO` ,
`CONTATTO` ,
`CIVILE` ,
`AFFETTI` ,
`ULTIMOLAVORO` ,
`ULTIMACORPORAZIONE` ,
`SALUTE` ,
`FORZA` ,
`INTELLIGENZA` ,
`INGRESSOIP` ,
`DATAINGRESSO` ,
`REGIP` ,
`DATAREG` ,
`BROWSER` ,
`LAST_LAVORO`
);
io nel fare la query sql nn ho messo tutti i campi del db , forse `è li problema? ho messo solo quelli che volevo ?
grazie per la risposta , mi potresti aiutare a risolvere il problema? grazie
Pagine → 1
Rispondi alla Discussione Aggiungi ai Preferiti Inoltra Discussione Forum Programmazione, GDRCD e Open Source Elenco Forum
Crossout: Supporto Nvidia Ansel