Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][HTML]FORMULARZ HTML/PHP
Forum PHP.pl > Forum > Przedszkole
szymon202
Siema. Jak mogę zrobić, że pole formularza jest zablokowane i jest tam wpisany nick tej osoby ?
Mam taki kod:
  1. <?php
  2.  
  3. if(isset($_POST["wyslano"]))
  4. {
  5. $nick=$_POST["nick"];
  6. $zapytaniee=mysql_query("SELECT pileczka from users WHERE login='$nick'");
  7.  
  8. if ($zapytaniee)
  9. {
  10. $wynik1 = mysql_fetch_array($zapytaniee);
  11. if(($wynik1["pileczka"])>=25)
  12. {
  13. mysql_query("UPDATE users SET pileczka = pileczka-25 WHERE login='$nick'") or die();
  14. $queryResult = mysql_query("UPDATE `users` SET `premium` = '1' WHERE `login`='$nick'")
  15. or die("Zapytanie niepoprawne");
  16. echo '<center>Pomyślnie kupiono premium!';
  17. }
  18. else
  19. {
  20. echo "<center>Nie masz <b>25 pileczek</b>";
  21. }
  22.  
  23. }
  24. }
  25. else
  26. {
  27. echo '<center>
  28. <form action="premium.php" method="post">
  29. <p>Cena: <b>25 pileczek</b><p>
  30. Nick (Duże i małe litery się liczą!)<input type="text" name="nick" disabled="disabled" value="'.$user['login'].'">
  31. <input type="submit" name="wyslano" value="Kup">
  32. </form>';
  33. }
  34. ?>


I wyświetla się nic ale przy wysłaniu formularza on jest jakby "niewidoczny".
pianta_d
Może zamiast $user['login'] daj $nick
szymon202
To teraz nic nie wyświetla
http://scr.hu/1weo/nk1kt
pianta_d
Sprawdź co przesyłasz sobie w $_POST.
Na sztywno dopisałem do zmiennej $nick jakieś dane i wyświetla je poprawnie.
_Borys_
disabled nie jest przesyłane w post
readonly="readonly"
szymon202
Tzn jak mam to zrobić? Co mam dać do value?
pianta_d
Sprawdź co przesyłasz przez $_POST
Czy będzie to disabled czy readonly to już nie jest ważne.
Moim zdaniem nie przesyłasz wartości, którą później przekazujesz do zmiennej $nick=$_POST["nick"]; (ja podstawiłbym zamiast $user['login'] - $nick)
lub if(isset($_POST["wyslano"]))
szymon202
http://scr.hu/1weo/pfa5e
<form action="premium.php" method="post">
<p>Cena: <b>25 pileczek</b><p>
Nick (Duże i małe litery się liczą!)<input type="text" name="nick" readonly="readonly" value=".$nick.">
<input type="submit" name="wyslano" value="Kup">
</form>';
pianta_d
Nick (Duże i małe litery się liczą!)<input type="text" name="nick" disabled="disabled" value="'.$nick.'">

Wydaje mi się, że chyba tak do samego końca nie rozumiesz co do Ciebie piszemy...



Wstaw na samym początku pliku
echo "<pre>";
print_r($_POST);
echo "</pre>";

i pokaż co Ci wyświetla tablica
Turson
  1. <form action="premium.php" method="post">
  2. <p>Cena: <b>25 pileczek</b><p>
  3. Nick (Duże i małe litery się liczą!)<input type="text" name="nick" readonly="readonly" value="'.$nick.'">
  4. <input type="submit" name="wyslano" value="Kup">
  5. </form>';
szymon202
Dałem apostrofy jak powiedział TursoN i się nic nie wyświetla.
A co do tego co napisał pianta
http://scr.hu/1weo/jbe5u
Turson
Nic Ci nie wyświetla bo $nick jest pusty. Jest zdefiniowany PO wysłaniu formularza, a nie przed.
pianta_d
Czyli jest, tak jak myślałem - nie przesyłasz nic $_POST'em

@TursoN racja
Czyli pole text nie może być readonly lub jak pisał TursoN zdefiniować/przekazać go wcześniej
szymon202
To jak mam to zrobić?
  1. <?php
  2.  
  3. if(isset($_POST["wyslano"]))
  4. {
  5. $nick=$_POST["nick"];
  6. $zapytaniee=mysql_query("SELECT pileczka from users WHERE login='$nick'");
  7.  
  8. if ($zapytaniee)
  9. {
  10. $wynik1 = mysql_fetch_array($zapytaniee);
  11. if(($wynik1["pileczka"])>=25)
  12. {
  13. mysql_query("UPDATE users SET pileczka = pileczka-25 WHERE login='$nick'") or die();
  14. $queryResult = mysql_query("UPDATE `users` SET `premium` = '1' WHERE `login`='$nick'")
  15. or die("Zapytanie niepoprawne");
  16. echo '<center>Pomyślnie kupiono premium!';
  17. }
  18. else
  19. {
  20. echo "<center>Nie masz <b>25 pileczek</b>";
  21. }
  22.  
  23. }
  24. }
  25. else
  26. {
  27. echo "<pre>";
  28. print_r($_POST);
  29. echo "</pre>";
  30. echo '<center>
  31. <form action="premium.php" method="post">
  32. <p>Cena: <b>25 pileczek</b><p>
  33. Nick (Duże i małe litery się liczą!)<input type="text" name="nick" readonly="readonly" value="'.$nick.'">
  34. <input type="submit" name="wyslano" value="Kup">
  35. </form>';
  36. }
  37. ?>
Turson
O ile pamiętam z innych tematów, to masz login użytkownika zapisany w sesji. Skorzystaj z tego. Lub w inny sposób - pobierz jego nick.
szymon202
Czyli bo jak mam http://scr.hu/1weo/fd2yi
To do wyświetlania nicku mam: '.$user['login'].'
Turson
To zrób to samo tutaj
szymon202
Rozwiązane!
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.