Autor | Zpráva | ||
---|---|---|---|
Elleran Profil |
zdravim potřebuju aby se mi podle přihlášenýho uživatele vyhledalo id města ve kterym je registrován a to mi následně uložilo do SESSION pro pozdější použití v obou tabulkách jak uživatel tak mesto je schodný pole id_mesta podle kterýho má přihlášení přiřadit daný město k uživateli ovšem při výpisu mi to zobrazuje místo id města id uživatele
<?php ob_start(); /* * Tetno soubor zjisti zda se takovy uzivatel s takovym heslem v databazi nachazi. * Pokud ano, do sessions o tom ulozime informaci. * Jinak se samozrejme presmerujeme zpet a dame uzivateli vedet, ze zadal spatne udaje */ session_start(); // Budeme pracovat se session, musíme je nastartovat. if(isset($_POST['jmeno'])){ require_once 'db.php'; $name = $_POST['jmeno']; $pass = md5($_POST['heslo']); $query = mysql_query("SELECT * FROM uzivatele JOIN mesta WHERE `jmeno` = '$name' and `heslo` = '$pass'") or die (mysql_error()); // Vybereme uživatele se zadaným jménem a heslem $Vysledek = mysql_fetch_array($query); if($Vysledek['jmeno']){ // pokud tato proměnná obsahuje data, bylo zadané správné jméno a heslo // Do sessions si uložíme pár informací o přihlášeném $_SESSION['prihlasen'] = 1; $_SESSION['login'] = $Vysledek['jmeno']; $_SESSION['UserId'] = $Vysledek['id_player']; $_SESSION['mestoId'] = $Vysledek['id_mesta']; $_SESSION['Usermesto'] = $Vysledek['jmeno_mesta']; $bl="index.php"; header("location: $bl"); // přesměrujeme na index exit; }else{ $bl="index.php?Alert=6"; header("location: $bl"); // špatně zadané údaje exit; // echo "Zadal jsi špatné údaje"; } mysql_free_result($query); }else{ echo "Zde nic není."; } ob_end_flush(); ?> další stránka kde se má jmeno a město uživatele zobrazovat : <? ob_start(); session_start(); require "./func.php"; ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title> RUTH </title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> </head> <body><center><b>Reklama :</b> <endora> <div align="center"> <table width="100%" cellpadding="0" cellspacing="0" color="red" > <tr> <td width="100%" height="20" colspan="2" color="red"> <?php /* * Vypiseme zda je uzivatel prihlasen, pokud ano tak jeho jmeno... * V přihlašovacím skriptu jsme nastavili $_SESSION['prihlasen']=1, pokud se $_SESSION['prihlasen'] opravdu rovná jedničce, uživatel je přihlášen. */ if(isset($_SESSION['prihlasen']) and $_SESSION['prihlasen']==1){ echo "<strong>Přihlášený uživatel</strong>: ".$_SESSION['login']; echo " město: ".$_SESSION['Usermesto']; } else { echo ""; } ?> </tr> <tr> <td width="100%" height="40" valign="top" colspan="2" bgcolor="33ff33" ><h1><center><?require "./hernimenu.php"?></center></h1></td> </tr> <tr> <!-- <td width="150" valign="top" bgcolor="#EEEEEE" ><center><?require "./.php"?></center></td> --> <td width="850" valign="top"><br><?ukazclanek()?></td> </tr> </table> </div> <br> <br> <br> <center><b><font size="3" color="black"> Stránky spuštěny: ??.??.20??. Aktualizace: ??.??.???? v: 0.01 <br>Admin : Říský Copyright © 2014 Stránky spadají pod elleran.cz </body> </html> <?ob_end_flush();?> |
||
Taps Profil |
#2 · Zasláno: 3. 5. 2014, 14:27:50
Elleran:
jaká je struktura tabulek? Při použití JOIN je ještě vhodné aplikovat i ON pomocí, kterého data spáruješ |
||
Elleran Profil |
Taps:
uživatel : 1 id_player int(10) UNSIGNED Ne Žádná AUTO_INCREMENT 2 jmeno varchar(100) utf8_czech_ci Ne Žádná 3 heslo varchar(50) utf8_czech_ci Ne Žádná 4 mail varchar(50) utf8_czech_ci Ne Žádná 5 prava varchar(1) utf8_czech_ci Ne 1 6 id_mesto int(10) ne Žádná mesta : 1 id_mesta int(10) UNSIGNED Ne Žádná AUTO_INCREMENT 2 jmeno_mesta varchar(255) utf8_czech_ci Ne Žádná 3 pocet_obyvatel int(255) Ne Žádná 4 souradnice_x int(11) Ne Žádná 5 souradnice_y int(11) Ne Žádná 6 jmeno_statu varchar(255) utf8_czech_ci Ne Žádná 7 rozloha_mesta int(11) Ne Žádná jinak zkusil sem to s tim ON ( nevim jestli správně :-( ) $query = mysql_query("SELECT * FROM uzivatele JOIN mesta ON id_mesta=id_mesto WHERE `jmeno` = '$name' and `heslo` = '$pass'") Taps: tak už sem našel chybu :-) špatně sem zadal podmínky sloučení takle už to funguje $query = mysql_query("SELECT * FROM uzivatele JOIN mesta ON uzivatele.id_mesto=mesta.id_mesta WHERE `jmeno` = '$name' and `heslo` = '$pass'") or die (mysql_error()); jinak moc děkuju za pomoc asi by mi jinak trvalo hodně dlouho než bych si vzpoměl na ON .-) |
||
Časová prodleva: 10 let
|
0