ugrás a tartalomhoz

Miért nem változtatja meg a cooki-t?

babazs · 2005. Május. 2. (H), 21.52
A problémám az, hogy a regisztrálás után se változik meg az user neve $U-ra!

Ez az első oldal:
<? setcookie('unev',0,0);
?>
<html>

<head>
<title>homepage</title>
</head>

<body background="hatter.jpg">
<center><h2>Belépési oldal!!</h2></center>

<table>
<?php
	   if(!isset($_COOKIE['unev']))
	   {
	   echo"<tr>";
	   echo"<td>Usernev:</td>";
	   echo"<form action='belepes.php' method='POST'>";
	   echo"<td><input type='text' name='un' value=''></td>";
	   echo"</tr>";
	   echo"<tr>";
	   echo"<td>Password:</td>";
	   echo"<td><input type='password' name='pw' value=''></td>";
	   echo"</tr>";
	   echo"<tr>";
	   echo"<td><input type='submit' name='belep' value='Belépés'></td>";
	   echo"</form>";
	   echo"<form action='reg.php' method='POST'>";
	   echo"<td><input type='submit' name='gomb' value='Regisztració'></td>";
	   echo"</form>";
	   echo"</tr>";
	   }
	   else
	   {
	   echo"<tr>";
	   echo"<td>Üdvözöllek:</td><td>".$_COOKIE['unev']."</td>";
	   echo"</tr>";
	   
	   }
?>
</table>


</body>
</html>
ez meg a regisztrációs oldal:
<? setcookie('unev',0,0);
?>

<html>

<?php
	   if(!empty($_POST['un']) && !empty($_POST['pw']) && isset($_COOKIE['unev']))
	   {
	   	  $U=$_POST['un'];
		  $P=$_POST['pw'];
		  
		  $kapcsolat=mysql_connect('localhost','wu','');
		  mysql_select_db('db');
		  $keres=mysql_query("SELECT * FROM tabla WHERE usernev='$U' AND password='$P'");

		  if(mysql_fetch_array($keres))
		  {
		    $COOKIE['unev']=$U;
								
		  }
	   }
	   else
	   { 
	   	   echo"<center><h3>Hiba!!</h3></center>";
	   }
		   
	   echo"<br><be><center><h4><a href='index.php'>Vissza</a> </h4></center>";
	   
	   
?>



<body>
</body>
</html>
köszi a segítséget!!
 
1

cookie manual!!!

Anonymous · 2005. Május. 2. (H), 22.52
Nem próbáltam ki a kódot, de az látszik, hogy mindkét oldal elején kezdőlépésként az unev nevű cookie-nak "0" értéket adsz. Ezután bármit csinálhatsz, minden oldal betöltődésekor a $COOKIE['unev'] az 0-ra íródik felül.

Olvasd el a cookie-ról szóló manual oldalt, és nezd meg, hogyan kell paraméterezni.
http://hu.php.net/manual/hu/function.setcookie.php

Gyulus
2

Ha csak ennyit irok:

Anonymous · 2005. Május. 2. (H), 23.04
Ha csak ennyit irok: setcookie('unev'); akkor meg nem ír ki semmit.
Miért?
3

cookie manual

Anonymous · 2005. Május. 3. (K), 10.54
Továbbra is csak azt tudom javasolni, hogy olvasd el a már említett manualt, és úgy paraméterezd a setcookie-t, ahogy kell.
És próbáld ki az ott bemutatott példákat.
A setcookie('unev') parancs egyébként nullázza (kiüríti) a kukit.

Gyulus
4

de hogyha meg kell adni neki

Anonymous · 2005. Május. 3. (K), 18.30
de hogyha meg kell adni neki kezdő értéket, akkor az oldal mindig ezt
fogja felvenni, nem pedig az $U-t
5

vizsgálat?

tiku I tikaszvince · 2005. Május. 3. (K), 19.03
Mi lenne ha előbb megnéznéd hogy van-e már unev a $_COOKIE tömbben?, ha nincs lerakod az alap értékekkel, ha meg van akkor nem bántod!
valahogy így:

if (!isset($_COOKIE['unev']))
{
  setcookie('unev',0,0);
}
else
{
  $u = $_COOKIE['unev'];
}
vagy rövidebben:

(!isset($_COOKIE['unev'])) ? setcookie('unev',0,0) : $u = $_COOKIE['unev'];
6

ezzel én is

Anonymous · 2005. Május. 3. (K), 19.15
ezzel én is probálkoztam.
az első oldalon még nincs jelen az $U-ezt hogy vigyem át oda?
de ez igy lenne akkor is,nem?: $_COOKIE['unev']=$U;
7

mi van?

tiku I tikaszvince · 2005. Május. 3. (K), 19.37
ezt én most nem nagyon értem! azt a sort berakod mindkettő elejére és ellenőrzi hagy van-e süti, ha nincs lerakja, ha van a kapottat használja.

most végigbogarásztam mégegyszer a kódodat, és nem is igazán értem hogy minek kell neked az a süti! Ha beléptetést akarsz csinálni, akkor szvsz inkább a session körül nézelődj.
Én egyébként nem vagyok a híve ennek "a minden funkicó külön fájlban" felfogásnak. Egy állományban (index.php) meg lehet oldani mindent, a feladattól függő kimenetek létrehozásával... de ez az én véleményem.

de hogy valami használhatót is mondjak:
amikor ilyen "megoldhatatlan" problémám van akkor megszoktam állni, és
1. lépés: végiggondolom, hogy mit is kell csinálni?
2. lépés: leírom, de minimum magamban megfogalmazom a lépéseket
3. lépés: rajzolok egy kis folyamatábrát (mondjuk utoljára egy A3-as lapot rajzoltam tele, de megérte, mert egy csomó felesleges próbálkozástól megóvtam magam)
4. lépés: végiggondolom, hogy hogy lehetne az egyes lépéseket minél egyszerűbben megoldani.
és csak ezek után kezdek el tényleg kódot írni.

szóval gondold végig hogy kell-e biztosan az a süti!
8

nem kell neki

Anonymous · 2005. Május. 4. (Sze), 13.00
Természetesen nem kell neki. Fõleg, hogy nem teljesen érti a mûködését, úgy látom.
Session kell neki.
http://hu.php.net/session

Gyulus
9

A SESSIONnnak ártem a

Anonymous · 2005. Május. 4. (Sze), 19.08
A SESSIONnnak ártem a cookiet most tanulom!
ezért lennék kiváncsi a használatára, ha valaki jol leirná
miben különbözik a sessiontol??