| 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: 12 let
|
|||
0