ok faro altre prove e ti faro' sapere. Thanks ciauuu
cimo
@cimo
Post creati da cimo
-
RE: Effettuare il log out alla chiusura del browser
-
RE: Effettuare il log out alla chiusura del browser
Ok il login lo puoi fare da dove vuoi pero' a me cosi' non piace!
Non mi va che come facebook uno si logga su un computer e mentre sei loggato puoi entrare da un' altra parte e fare come ti pare....
lo trovo stupido.
Se sei loggato dovresti impedire di entrare con lo stesso account da piu' parti.
E poi l'emulazione del cron, e' uno script in background, che non viene attivato da nessun utente. Lo attivo io dal pannello di controllo e si vede il db le sessioni e tutto quello che riguarda il mio sito.
Lo so che le sessioni scadono appena chiudi il browser ma appunto sono relative a quel browser li se ne apro un altro avrai una sessione differente.Comunque php con xampp in locale su win non mi ha dato mai problemi ne di errori e ne di gestione file o che... ho sempre lavorato in locale e poi uppato su linux ... l'unica cosa che devo guardare sempre sono gli script sui permessi che una volta che li uppo su linux devo controllare che li non ho commesso errori tutto qua...
Allora per arrivare a una conclusione l' unica cosa che ho da fare per vedere se l' utente risulta ancora online e' usare un tot di tempo che controlla se fa azioni o no.... tutto qui quello che posso fare quindi?
-
RE: Effettuare il log out alla chiusura del browser
Be non e' che non ti interessa molto...metti caso qui scrivi un post...
Chiudi il browser e ti sei scordato che devi rientrare, ti vai per riloggare ma risulti online e quindi non entri e devi aspetta' 15 minuti?!?
Comunque anche con cron o la mia emulazione che funziona sia su win che su linux rimane sempre il problema del tempo.
Se io ho un utente che si e' loggato e salvo i dati in $_SESSION
se chiude il browser che succede? quelle session vengono svuotate? Il cookie di sessione che fine fa?Vorrei trovare un modo di dire allo script se quella "PRECISA" sessione nn esiste piu' allora mettilo out questo mi serve
e come faccio a capire che quella presisa sessione nn c'e'?
Se non sbaglio le sessioni sono relative al browser che si sta usando quindi come faccio a capire da uno script esterno che quella sessione non c'e'? -
RE: Effettuare il log out alla chiusura del browser
Be diciamo che questo e' il primo problema che ho trovato usando php su windows (anche perche' sto' lavorando in locale) per poi uppare su php.
ma se quello che dico e' impossibile allora tutti gli altri siti compresi quelli in asp e non solo in php come fanno??? -
RE: Effettuare il log out alla chiusura del browser
m . m . m......Allora uso le sessioni per salvare i dati che mi servono e poi aggiorno il db per dirgli guarda che l'utente e' 'out' o 'in'
Solo che se ho un tempo troppo breve e lui sta' leggendo qualcosa poi quando ritorna a muoversi si trova out. Se invece e' troppo lungo e vuole rientrare si vede ancora in e deve aspettare.
Per cron (come scritto su) vorrei evitarlo perchè su win non va e mi piacerebbe trovare una soluzione che soddisfi tutto.
Ho emulato anche cron con uno script in background in php ma il problema e' sempre quello il tempo.
Manca quella parte che davvero alla chiusura effettiva del browser venga aggiornata una variabile o un dato che dica che davvero e' stato chiuso il computer o il browser..... -
Effettuare il log out alla chiusura del browser
Ciao raga. Ho un problema e credetemi ho provato 3 giorni prima di postare qui per chiedere un aiuto!
Allora nel mio sito voglio implementare uno script che mi consente di:- Quando l' utente chiude il browser (o si chiude perchè gli esplode il computer), deve effettuare il logout aggiornando il db e distruggergli la sessione!
Ho letto di cron ma funzia solo su linux e io vorrei fare in modo di usare un metodo che metta d'accordo il pingu e la finestra. - Ho fatto tante prove e questa e' quella che piu' si avvicina. Ho creato uno script che sfrutta gli utenti che navigano sul sito. Ogni volta che un utente fa un passo, lo script legge una variabile di quelli che hanno effettuato il login aggiornandola. Se un utente sta fermo per tot tempo lo script vede che non fa un niente di niente e lo setta a 'out' e se l'utente ritorna e si muove la sua sessione viene distrutta!
Voi direte: "e se funziona e lo hai gia' fatto che ci stai a rompere??"
Ma c'e' un ma'!!! (sempre sti cavolo di ma! :nonlodire ).
Se l'utente legge qualcosa sul sito, lo script non lo sa che e' ancora li che guarda e non tocca niente come un bimbo diligente, lo conta come se fosse andato a fare un bel po' di pipi' per poi dimenticarsi il browser aperto mentre e' fuori con il cane che gli fa fare i bisogni.
3)Ma mentre e' fuori con il cane un meteorite colpisce casa sua e il suo browser si chiude senza cliccare sul tasto del logout. Dato che non riesce a stare senza il mio sito, intanto che casa sua con tutti i suoi familiari dentro brucia, lui corre al primo internet point per collegarsi ma per sua disgrazia vede che ancora risulta loggato e quindi non puo' accedere se non aspetta quel tempo settato nel mio script (se e' poco lo caccia mentre sta fermo, se e' tanto lui risulta in ancora in linea pur nn essendoci realmente).
RIASSUMENDO: Quindi il mio problema e' questo =
Come diavolo faccio a dire al php: "senti quell' utente (o il meteorite) ha chiuso il browser quindi mo tu setti sta' variabile nel db e gli distruggi la sessione! Cosi' posso tornare a dormire!!! :dhò: E l' utente puo finalmente riconnettersi per finire di leggere sul mio sito in pace!!
P.S sorry ma vista l'ora non mi sono accorto che google mi aveva reindirizzato su ->cms->phpbb e nn nella sezione php.. l'ho ripostato qui sorry
- Quando l' utente chiude il browser (o si chiude perchè gli esplode il computer), deve effettuare il logout aggiornando il db e distruggergli la sessione!
-
Effettuare il log out alla chiusura del browser
**Ciao raga. Ho un problema e credetemi ho provato 3 giorni prima di postare qui per chiedere un aiuto!
Allora nel mio sito voglio implementare uno script che mi consente di:
1) Quando l' utente chiude il browser (o si chiude xke gli esplode il computer), deve effettuare il logout aggiornando il db e distruggergli la sessione!
Ho letto di cron ma funzia solo su linux e io vorrei fare in modo di usare un metodo che metta d'accordo il pingu e la finestra.
2) Ho fatto taaaaante prove e questa e' quella che piu' si avvicina. Ho creato uno script che sfrutta gli utenti che navigano sul sito. Ogni volta che un utente fa un passo, lo script legge una variabile di quelli che hanno effettuato il login aggiornandola. Se un utente sta fermo per tot tempo lo script vede che nn fa un niente di niente e lo setta a 'out' e se l'utente ritorna e si muove la sua sessione viene distrutta!
Voi direte: "e se funziona e lo hai gia' fatto che ci stai a rompere??"
Ma c'e' un ma'!!! (sempre sti cavolo di ma! :nonlodire ).
Se l'utente legge qualcosa sul sito, lo script nn lo sa che e' ancora li che guarda e nn tocca niente come un bimbo diligente, lo conta come se fosse andato a fare un bel po' di pipi' per poi dimenticarsi il browser aperto mentre e' fuori con il cane ke gli fa fare i bisogni.
**3)**Ma mentre e' fuori con il cane un meteorite colpisce casa sua e il suo browser si chiude senza cliccare sul tasto del logout. Dato che non riesce a stare senza il mio sito, intanto che casa sua con tutti i suoi familiari dentro brucia, lui corre al primo internet point per collegarsi ma per sua disgrazia vede che ancora risulta loggato e quindi nn puo' accedere se nn aspetta quel tempo settato nel mio script (se e' poco lo caccia mentre sta fermo, se e' tanto lui risulta in ancora in linea pur nn essendoci realmente).
RIASSUMENDO: Quindi il mio problema e' questo =
Come diavolo faccio a dire al php: "senti quell' utente (o il meteorite) ha chiuso il browser quindi mo tu setti sta' variabile ne db e gli distruggi la sessione! cosi' posso tornare a dormire!!! :dhò: e l' utente puo finalmente riconnettersi per finire di leggere sul mio sito in pace!!
** -
RE: Invio del form sulla stessa pagina index.php
Raga dai nessuno sa come fare? please...mi ci sto' scervellando!!
-
Invio del form sulla stessa pagina index.php
Ciao a tutti.
ho un problema con ajax, vorrei fare in modo che l'invio del form sta nella stessa pafina index.php e no in thank-you.php
Ho trovato questo tutorial per imparare ma nn mi e' chiara ancora la parte su come devo mandare i valori che mi servono alla stessa pagina index.php
Vi posto il codice// AJAX function GetXmlHttpObject() { if (window.XMLHttpRequest) { // IE7+, Firefox, Chrome, Opera, Safari return new XMLHttpRequest(); } if (window.ActiveXObject) { // IE5, IE6 return new ActiveXObject("Microsoft.XMLHTTP"); } return null; } function submitFormWithAjax() { var requestPost = new GetXmlHttpObject(); var checkFormSendMail = document.formSendMail.checkFormSendMail.value; var sender = document.formSendMail.sender.value; var sendTo = document.formSendMail.sendTo.value; var subject = document.formSendMail.subject.value; var textMessage = document.formSendMail.textMessage.value; var captcha = document.formSendMail.captcha.value; var parameters = "checkFormSendMail=" + checkFormSendMail + "&sender=" + sender + "&sendTo=" + sendTo + "&subject=" + subject + "&textMessage=" + textMessage + "&captcha=" + captcha; requestPost.open("POST", "index.php", true); requestPost.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); requestPost.send(parameters); requestPost.onreadystatechange = function() { if(requestPost.readyState == 4 && requestPost.status == 200) { document.getElementById("divFormMail").innerHTML = requestPost.responseText; document.getElementById("divUploadFile").style.display = "none"; } else { document.getElementById("formSendMail").innerHTML = "An error has occured making the request"; } } } // AJAX
Provando il codice in questo modo funziona ma ho dentro il divFormMail l'intera pagina index.php duplicate e quindi ne vedo due una al centro e l'altra dato che sta' nel div un po' spostata a destra e in basso...
Nn mi e' chiara sta parterequestPost.onreadystatechange = function() { if(requestPost.readyState == 4 && requestPost.status == 200) { document.getElementById("divFormMail").innerHTML = requestPost.responseText; document.getElementById("divUploadFile").style.display = "none"; } else { document.getElementById("formSendMail").innerHTML = "An error has occured making the request"; } }
Come faccio ad usare la stessa pagina index visto che le variabili POST stanno li? thanks!!
-
RE: Aiuto con script registrazione utenti
Ho risolto tutto ho riffatto tutto d'accapo e ora va'....
L'unica cosa e' il codice di restituzione della password se viene dimenticata...
Invia l'e-mail e tutto ma le variabili .. nada...
Come faccio per richiamarle visto che stanno nel file reg.php
Questo e' il codice della restituzione password...
Help tnx<? include 'db.php'; $sql_email_check = mysql_query("SELECT email FROM utenti WHERE email='$email'"); $email_check = mysql_num_rows($sql_email_check); $sql_username_check = mysql_query("SELECT username FROM utenti WHERE username='$username'"); $username_check = mysql_num_rows($sql_username_check); if($email_check > 0){ echo "<html> <head> <meta http-equiv=\"refresh\" content=\"3;url=./login.php\"> <link rel=\"stylesheet\" type=\"text/css\" href=\"style.css\"> </head> <body> <div align=\"center\" class=tit>I dati richiesti sono stati inviati a $email</div> </body> </html>"; }else{ echo "Si è verificato un errore<br>non è stato possibile inviare i dati richiesti a $email"; } $soggetto = "Richiesta password dimenticata $nomesito"; $messaggio="Ciao $username,\n ecco i dati di accesso che hai richiesto:\n nick: $username_\n password: $password_random\n A presto\n Staff di $nomesito.\n\n\n\n\n"; mail($email, $soggetto, $messaggio, "From: $nomesito <$emailadmin>\nX-Mailer: PHP/" . phpversion()); ?>
-
Aiuto con script registrazione utenti
Ciao a tutti ho un problema con il mio script per la registrazione utenti..
Vorrei far ricevere, in caso di smarrimento password, un'e-mail con i dati dell'utente ke lo richiede inserendo la sua e-mail nell' apposito campo..questi sono i miei file...Questo e' il mio file register.php
[php]
<?include 'db.php';
if(!eregi("^[a-z]{5,15}$",$first_name)){
echo "Nome non valido ";
echo "<a href="./join_form.php">Torna</a>";
exit;
}if(!eregi("^[a-z]{5,15}$",$last_name)){
echo "Cognome non valido ";
echo "<a href="./join_form.php">Torna</a>";
exit;
}if (!eregi( "^[_.0-9a-z-]+@([0-9a-z][0-9a-z-]+.)+[a-z]{2,4}$",$email_address)){
echo "E-mail non valida ";
echo "<a href="./join_form.php">Torna</a>";
exit;
}if(!eregi("^[0-9a-z]{4,10}$",$username)){
echo "Username non valido ";
echo "<a href="./join_form.php">Torna</a>";
exit;
}// Define post fields into simple variables
$first_name = $_POST['first_name'];
$last_name = $_POST['last_name'];
$email_address = $_POST['email_address'];
$username = $_POST['username'];/* Lets strip some slashes in case the user entered
any escaped characters. */$first_name = stripslashes($first_name);
$last_name = stripslashes($last_name);
$email_address = stripslashes($email_address);
$username = stripslashes($username);/* Let's do some checking and ensure that the user's email address or username
does not exist in the database */$sql_email_check = mysql_query("SELECT email_address FROM users WHERE email_address='$email_address'");
$sql_username_check = mysql_query("SELECT username FROM users WHERE username='$username'");$email_check = mysql_num_rows($sql_email_check);
$username_check = mysql_num_rows($sql_username_check);if(($email_check > 0) || ($username_check > 0)){
if($email_check > 0){
echo "<strong>La tua E-mail risulta gia' registrata nel nostro database. Inserisci una diversa E-mail!<br />";
unset($email_address);
}
if($username_check > 0){
echo "L' Username risulta gia' registrato nel nostro database. Inserisci un diverso Username!<br />";
unset($username);
}
include 'join_form.php'; // Show the form again!
exit(); // exit the script so that we do not create this account!
}/* Everything has passed both error checks that we have done.
It's time to create the account! *//* Random Password generator.
http://cimo.altervista.org/file_reg.../passRandom.phpWe'll generate a random password for the
user and encrypt it, email it and then enter it into the db.
*/function makeRandomPassword() {
bla bla =P
}$random_password = makeRandomPassword();
$db_password = md5($random_password);
// Enter info into the Database.
$info2 = htmlspecialchars($info);
$sql = mysql_query("INSERT INTO users (first_name, last_name, email_address, username, password, info, signup_date, decrypted_password)
VALUES('$first_name', '$last_name', '$email_address', '$username', '$db_password', '$info2', now(), '$random_password')") or die (mysql_error());if(!$sql){
echo 'Errore nel creare il tuo account!! Contatta il WebMaster.';
} else {
$userid = mysql_insert_id();
$activatepath = "activate.php?id=$userid&code=$db_password";
// Let's mail the user!
$subject = "Richiesta registrazione $sitename";
$message = "$first_name $last_name,
Hai inviato la registrazione su $sitepathPer attivare il tuo account, clicca qui: $sitepath$activatepath I tuoi dati: Username: $username Password: $random_password CONSERVA QUESTI DATI XCHE' PER LA TUA PRIVACY E QUELLA DEGLI ALTRI I DATI SONO CRIPTATI!! Grazie! WebMaster, $sitename Questa E-mail viene generata automaticamente quindi non rispondere!"; mail($email_address, $subject, $message, "From: $sitename <$adminemail>\nX-Mailer: PHP/" . phpversion()); echo 'La tua richiesta e' stata inviata alla tua E-mail controlla!';
}
?>
[/php] Questo e' il file rec<font size="2">[php]
<?include 'db.php';
/* Let's do some checking and ensure that the user's email address or username
does not exist in the database */$sql_email_check = mysql_query("SELECT email_address FROM users WHERE email_address='$email_address'");
$email_check = mysql_num_rows($sql_email_check);if($email_check > 0){
echo "<html>
<head>
<meta http-equiv="refresh" content="3;url=./index.htm">
<link rel="stylesheet" type="text/css" href="style.css">
</head>
<body>
<div align="center" class=tit>I dati richiesti sono stati inviati a $email_address</div>
</body>
</html>";
}else{
echo "Si è verificato un errore<br>non è stato possibile inviare i dati richiesti a $email_address";
}
$message="Ciao $username_check,\n ecco i dati di accesso che hai richiesto:\n
nick: $username\n
password: $random_password\n
A presto!!\n
Staff di $nomesito.\n\n\n\n\n";mail($email_address, $subject, $message, "From: $sitename <$adminemail>\nX-Mailer: PHP/" . phpversion());
?>
[/php]Quando vado per inserire l'e-mail mi dice ke nn e' possibile esegurire l'operazione...Nn calcola l'email di striscio..eppure le va' a salvare nel db?!?!Ho notato ke in questo pezzo di codice dove verifica se nel db ci sono usernmane e password gia' registrati ( e quindi nega la registrazione se gia' esistenti ) l'username mi funziona ma l'e-mail no...e' allora ho pensato ke nn le va' a cercare proprio nel database...e mi sembra strano xche' e' uguale come l'username ma cambiano solo le variabili ma nn funziona...
Uff aiutatemi vi prego nn so' piu' dove sbattere la testa...[php] $sql_email_check = mysql_query("SELECT email_address FROM users WHERE email_address='$email_address'");
$sql_username_check = mysql_query("SELECT username FROM users WHERE username='$username'");$email_check = mysql_num_rows($sql_email_check);
$username_check = mysql_num_rows($sql_username_check);if(($email_check > 0) || ($username_check > 0)){
if($email_check > 0){
echo "<strong>La tua E-mail risulta gia' registrata nel nostro database. Inserisci una diversa E-mail!<br />";
unset($email_address);
}
if($username_check > 0){
echo "L' Username risulta gia' registrato nel nostro database. Inserisci un diverso Username!<br />";
unset($username);
}
include 'join_form.php'; // Show the form again!
exit(); // exit the script so that we do not create this account!
}
[/php]Tnx