![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 10 Pomógł: 0 Dołączył: 30.06.2012 Ostrzeżenie: (0%) ![]() ![]() |
Witam, użytkownik po zalogowaniu przechodzi do swojego profilu gdzie wyświetla mu sie powitanie jego nick, imię i nazwisko oraz e-mail. Chcę zrobić by z własnego profilu użytkownik mógł wysłac dane do bd tak by dane te były lokowane tak by później poprzez id usera można było je wyswietlić.
Kombinuje z formularzami tylko nie mam pomysłu jak to złożyć w kupę. W kwestii tabeli to w sumie chciałem zrobic tak by wysyłało tylko wynik meczu. Jednak chyba nie obędzie się bez wysłania również nazwy meczu (np.:Polska -Grecja)... Coś takiego zrobiłem: Kod <?php /** * Tylko dla zalogowanych użytkowników */ if (!user::isLogged()) { echo '<p class="error">Przykro nam, ale ta strona jest dostępna tylko dla zalogowanych użytkowników.</p>'; } else { $id = $_GET['id']; /** * Sprawdź czy użytkownik o podanym ID istnieje */ $userExist = mysql_fetch_array(mysql_query("SELECT COUNT(*) FROM users WHERE id = '$id'")); // Użytkownik nie istnieje if ($userExist[0] == 0) { die ('<p>Przykro nam, ale użytkownik o podanym identyfikatorze nie istnieje.</p>'); } /** * Użytkownik istnieje, tak więc pokaż jego profil */ // Zapisz dane użytkownika o podanym ID, do zmiennej $profile $profile = user::getDataById ($id); echo '<h3>Profil użytkownika: <br /><span style="color:gold">'.$profile['login'].'</span></h1>'; echo '<b>Imię i Nazwisko:</b> '.$profile['nazwisko'].'<br />'; echo '<b>Nick:</b> '.$profile['login'].'<br />'; echo '<b>Email:</b> '.$profile['email'].'<br />'; } require 'footer.php'; // Dołącz końcowy kod HTML ?><br /> <FORM action="insert.php" method="post"> <form method="post" action=""> <label for="mecz">1. Gospodarz - Gość</label><br /> <label for="login">Wynik:</label> <input size="4" maxlength="5" type="text" name="wynik" id="wynik" /> <input type="hidden" name="send" value="1" /> <input type="submit" value="OK" /> </form><br /> <form method="post" action=""> <label for="mecz">2. Gospodarz - Gość</label><br /> <label for="login">Wynik:</label> <input size="4" maxlength="5" type="text" name="wynik" id="wynik" /> <input type="hidden" name="send" value="1" /> <input type="submit" value="OK" /> </form><br /> <form method="post" action=""> <label for="mecz">3. Gospodarz - Gość</label><br /> <label for="login">Wynik:</label> <input size="4" maxlength="5" type="text" name="wynik" id="wynik" /> <input type="hidden" name="send" value="1" /> <input type="submit" value="OK" /> </form><br /> DO wysyłki formularzy służyłby plik insert.php I tu nie ma pomysłu jak wcisnąć ID użytkownika pod które miałyby byc wysyłane dane plik insert.php: Kod <?php $con = mysql_connect("mysql3.ph-hos.osemka.pl","user","haslo"); if (!$con) { die('Could not connect: ' . mysql_error()); } mysql_select_db("1189345_toptyper", $con); $sql="INSERT INTO typy (mecz, typ) VALUES ('$_POST[mecz]','$_POST[wynik]')";//w zależności od budowy bazy if (!mysql_query($sql,$con)) { die('Error: ' . mysql_error()); } mysql_close($con); ?> Doadam jeszcze że tak wygląda moja klasa user z której muszę wyciągnąć id zalogowanego i wstawić do zapytania... jak to zrobić? Kod class user { public static $user = array(); /** * Zwraca tablicę ze wszystkimi danymi o użytkowniku. * Indeksy tablicy odpowiadają nazwom pól w bazie danych (login, pass etc...) * @param string $login * @param string $pass * @return array */ public function getData ($login, $pass) { if ($login == '') $login = $_SESSION['login']; if ($pass == '') $pass = $_SESSION['pass']; self::$user = mysql_fetch_array(mysql_query("SELECT * FROM users WHERE login='$login' AND pass='$pass' LIMIT 1;")); return self::$user; } /** * Zwraca tablicę ze wszystkimi danymi o użytkowniku, tak jak powyższa metoda klasy, * ale rozpoznaje użytkownika nie po podaniu loginu i hasła tylko po podaniu ID. * Używana np. do wyświetlania strony profilu. * @param int $id * @return array */ public function getDataById ($id) { $user = mysql_fetch_array(mysql_query("SELECT * FROM users WHERE id='$id' LIMIT 1;")); return $user; } /** * Jeśli użytkownik jest zalogowany - zwraca true, w przeciwnym wypadku - false * @return bool */ public function isLogged () { if (empty($_SESSION['login']) || empty($_SESSION['pass'])) { return false; } else { return true; } } /** * "Soli" hasło przed jego zahashowaniem funkcją md5() * @param string $pass * @return string */ public function passSalter ($pass) { $pass = '$@@#$#@$'.$pass.'q2#$3$%##@'; return md5($pass); } } ?> Ten post edytował jumbo 1.07.2012, 19:34:34 |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 20.07.2025 - 08:48 |