Kezdőoldal » Számítástechnika » Weblapkészítés » Hogyan lehet megoldani azt,...

Hogyan lehet megoldani azt, hogy a valós adatokat írja ki a weblap?

Figyelt kérdés

Sessionnal már meglett oldva, hogy bejelentkezve maradjunk, de hogy lehetne megoldani azt, hogy pl a rangot azt tényleg ahhoz a felhasználóhoz mutassa? mert most az elsőnek regisztrált tagnak mutatja a rangját az összes felhasználónak.


<?php

session_start();

?>

<?php

include ('config.php');

include ('felso.php');

?>


<?php

if ( $_GET['page'] == "kilepes" )

{

header("Location: belepes.php");

session_destroy();

}

$lekerdezes = mysql_fetch_assoc(mysql_query("SELECT * FROM userek"));

if ( isset($_SESSION['felhasznalo']) )

{

echo "<b>Üdvözlünk:</b> " .$_SESSION['felhasznalo']."<br />";

echo "<b>Rangod:</b> " .$lekerdezes['rang']."<br />";

echo "<b>Regisztrációd ideje:</b> ".$lekerdezes['regdatum']."<br />";

echo "<a href='?page=kilepes'>Kijelentkezés</a> <br />";

}

else

{

header('Location: belepes.php');

}

include ('also.php');

?>


2011. júl. 29. 20:58
1 2 3 4
 11/34 A kérdező kommentje:

De amúgy én ennek a $_SESSION['user_id'] változónak, hogyan adjak értéket? :)


Mert a felhasználósnál úgy volt, hogy amikor belépett volna akkor ott elmentettem a sessionba és átirányítottam az profile részhez :)

if ( mysql_num_rows($valami) != 0 )

{

$_SESSION['felhasznalo'] = $felhasznalo;

header('Location:');

}

2011. júl. 29. 22:36
 12/34 anonim ***** válasza:

Hát valahona csak meg kaptad a $felhasznalo változót.

Amikor be loggol az user kell hogy legyen ott egy adat kiolvasás, mint ez:


$lekerdezes = mysql_fetch_assoc(mysql_query("SELECT * FROM userek" WHERE jelszo = SHA('$jelszo')));


$felhasznalo = $lekerdezes['felhasznalo'];

És akkor itt kel az id kinyerni:

$user_id = $lekerdezes['user_id'];

2011. júl. 29. 22:44
Hasznos számodra ez a válasz?
 13/34 anonim ***** válasza:

Persze megéri rögtön sessionba rakni a belépés eredményét:


$lekerdezes = mysql_fetch_assoc(mysql_query("SELECT * FROM userek WHERE jelszo = SHA('$jelszo')"));


$_SESSION['felhasznalo'] = $lekerdezes['felhasznalo'];

$_SESSION['user_id'] = $lekerdezes['user_id'];

2011. júl. 29. 22:46
Hasznos számodra ez a válasz?
 14/34 A kérdező kommentje:

Aham értem már :)

Tehát amikor regiztrált automatikusan kapott egy id-t azt az id-t kérdezzem le majd mentsem el sessionba :)

2011. júl. 29. 22:49
 15/34 anonim ***** válasza:

Igen ezt automatikusan (egy új insert esetén) az sql adatbázis megadja minden extra beavatkozás nélkül ha van ilyen AI(automatikus számozás) mező.


Ez szinte minden sql tábla lelke, ritka hogy ha nincs auto sorszámozás.


Közbe néztem hogy ezt is rosszul írtam így néz ki általában, miután valaki egy űrlapon keresztül bejelentkezik.:

$lekerdezes = mysql_fetch_assoc(mysql_query("SELECT * FROM userek WHERE felhasznalo = '$felhasznalo' AND jelszo = SHA('$jelszo')"));

2011. júl. 29. 23:03
Hasznos számodra ez a válasz?
 16/34 anonim ***** válasza:
És ugye az auto sorszámozás garantálja, hogy ez mindenképp egyedi érték lesz ami az userhez tartozik, alkalmaz az azonosításra. Mivel ez szám érték ezért mentes a karakter kódolási hibáktól is.
2011. júl. 29. 23:06
Hasznos számodra ez a válasz?
 17/34 A kérdező kommentje:

Igen igen :)

Viszont anno az extrák résznél be kellett kapcsolnom az auto_increment részt :)


Meg valamiért nem olvassa ki az id-t :S

az id rész ugye ott helyezkedik el ahol a felhasznalonev jelszo email stb ezek elején :)


$bejelentkezes = mysql_query("SELECT * FROM userek WHERE felhasznalo='".$felhasznalo."' AND jelszo='".$jelszo."'");


a bejelentkező részt alkalmaztam lekérdezésnek :)


a felhasználónév azt jó de az id miért azt nem tudom.

$_SESSION['felhasznalo'] = $bejelentkezes['felhasznalo'];

$_SESSION['user_id'] = $bejelentkezes['id'];


Onnan tudom, hogy sajnos nem küld semmit az id rész, hogy a profil részbe beszúrtam ezt ideiglenesen : echo "<b>id:</b>" .$_SESSION['user_id']."<br />";

2011. júl. 29. 23:17
 18/34 anonim ***** válasza:

Próbáld így:

$bejelentkezes = mysql_query("SELECT * FROM userek WHERE felhasznalo='$felhasznalo' AND jelszo='$jelszo'");


Amúgy a jelszo nevű mezőben van a jelszó és kódolatlanul?

2011. júl. 29. 23:24
Hasznos számodra ez a válasz?
 19/34 A kérdező kommentje:
jelenleg kódolatlan igen :)
2011. júl. 29. 23:29
 20/34 anonim ***** válasza:

Ha még mindig nem működik, akkor próbáld meg, hogy az elvileg már jól működő lekérdezésnél kérdezd le az id is, hogy ott bejön-e:

echo "<b>Üdvözlünk:</b> " .$_SESSION['felhasznalo']."<br />";

echo "<b>user_id:</b> " .$lekerdezes['id']."<br />";

echo "<b>Rangod:</b> " .$lekerdezes['rang']."<br />";

echo "<b>Regisztrációd ideje:</b> ".$lekerdezes['regdatum']."<br />";

echo "<a href='?page=kilepes'>Kijelentkezés</a> <br />";

2011. júl. 29. 23:32
Hasznos számodra ez a válasz?
1 2 3 4

Kapcsolódó kérdések:




Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!