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
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'")
ale výsledek je pořád stejnej háže mi to město podle hodnoty ID_player místo id_mesta


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 .-)

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: