Newsgroup: it.comp.www.php
Titolo: selezionare record in base alla lunghezza di un campo

devo fare una query mysql che mi selezioni tutti i record che hanno
lunghezza del campo username minore di 4
ho provato in phpmyadmin con 
SELECT * FROM docente WHERE len(username)<4
ma non deve proprio essere la sintassi giusta..:-)

 lunghezza del campo username minore di 4
http://dev.mysql.com/doc/mysql/en/String_functions.html#IDX1278
-- 
I am what I am, I do what I can
L'uomo, conscio di sbagliare, persevera.



mi rispondo da solo
 
http://dev.mysql.com/doc/mysql/en/String_functions.html
dove c' la poderosa CHAR_LENGHT


http://dev.mysql.com/doc/mysql/en/String_functions.html#IDX1278
come non detto mi hai battuto di qualche lunghezza...

On Sun, 26 Sep 2004 20:32:04 GMT, "Setec Astronomy"
<setec@_NO_NOSPAM_freemail.it> wrote:
ok ci siamo quasi...
a questo punto risolti i problemi di cookie e include sono autenticato, prima
di dare il  return true; la routine di login esegue:
session_start();	//session handling section
session_register("sid");
session_register("susername");
session_register("slevel");
session_register("semail");
session_register("snome");
 
global $sid; //user profile's variables, directly taken from the database
global $susername;
global $slevel;
global $semail;
global $snome;
a questo punto vedo la pagina, e dovrei avere a disposizione le variabili
$username, $level etc etc... ma a quanto pare c'è qualcosa che mi sfugge
perchè non le vedo...

 session_register("sid");
Non utilizzare session_register, utilizza $_SESSION.


Non utilizzare session_register, utilizza $_SESSION.
provo.. avendo ancora register globals on mi sembrva di aver letto che diceva
di usaare session register adesso mi rimetto li di buono a provare... finchč
tutti dormono in casa posso anche riuscire a lavorare tranquillo

Non utilizzare session_register, utilizza $_SESSION.
siamo sempre piu' vicini... ho usato dappertutto $_SESSION visto che prima o
poi il register_globals dovra sparire..., vedo le variabili di sessione in
giro per tutto il sito e mi pare di non avere problemi... resta il fatto che
non riesco afare il logout...
uso questo piccolo script:
<?php
	setcookie("yetauth");
	header("Location: $HTTP_REFERER");
	session_start();
	session_destroy();
?>
quando clicco sul link la pagina torna al REFERER come se non l'avesse mai
lasciata... nella dir del php trovo ancora il file di sessione che non viene
cancellato, nei cooki trovo due valori "yetauth" uno con path /login (dove si
trova il file auth_logout.php e uno con path "/" creato da auth_login.php, in
piu' trovo anche un cookie PHPSESSID.....
dove il cookie di login viene settato all'inizio qua:
<?php
	include "auth.inc.php";
 
	$md5pass = md5($password);
	$ip = getenv("REMOTE_ADDR");
	if ( AuthenticateUser($username,$md5pass) ) {
		setcookie("yetauth","$username-$md5pass",time()+3600,"/");
		error_log( date("d/m/Y H:i:s") . " -- $ip -- Username:
'$username' authentication successful\n", 3, "log.txt");
	}
	else
		error_log( date("d/m/Y H:i:s") . " -- $ip -- Username:
'$username' authentication failure\n", 3, "log.txt");
 	header("Location: $HTTP_REFERER");
?>

 cancellato, 
Questo e' il comportamento corretto, i file vengono cancellati
automaticamente dal session garbage collector ad intervalli stabiliti
nel php.ini e non alla distruzione della sessione.
A cosa ti serve settare un cookie? Non puoi usare solo le sessioni?


A cosa ti serve settare un cookie? Non puoi usare solo le sessioni?
Ehm.. per autenticare il cookie?
...............
cookie_var = split("-", $HTTP_COOKIE_VARS["yetauth"]); //retrieves user and
hashed password
$auth = AuthenticateUser($cookie_var[0],$cookie_var[1]); //authenticates the
cookie
.................
Leggendo piu' avanti ho trovato le indicazioni di un libro dove cita:
If you’ve set a cookie with nondefault values for an expiration time, path, or
domain, you must provide those same values again when you delete the cookie
for the cookie to be deleted properly.
ergo se ho settato un cookie con path="/" tipo questo 
	setcookie("yetauth","$username-$md5pass",time()+3600,"/");
che comando dovrei per cancellarlo?
	setcookie("yetauth", "",time()+3600,"/");
si.. direi che così funzia...

 cookie_var = split("-", $HTTP_COOKIE_VARS["yetauth"]); //retrieves
Non utilizzare $HTTP_COOKIE_VARS, utilizza $_COOKIE


Non utilizzare $HTTP_COOKIE_VARS, utilizza $_COOKIE
ok, $_COOKIE non ha bisogno di essere dichiarata global, dico bene?

 ok, $_COOKIE non ha bisogno di essere dichiarata global, dico bene?
http://www.php.net/manual/en/reserved.variables.php


inizi con lo studiarlo.
mah ci sto provando... ha una sua logica anche usare un cookie e le
sessioni...
sicuramente si può fare meglio