Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: String przypisany do zdjęcia.
Forum PHP.pl > Forum > PHP
filipsiu
Witam, mam do Was pytanie. A mianowicie chodzi mi o to jak zrobić żeby:
wyświetlało się zdjęcie A i pod nim formularz(to wiem jak) a następnie by po wpisaniu w pole textowe było
  1. if(a == b)
przy czym to a to wlasnie to zdjęcie. Chce zrobić coś a'la Logo Quiz jak jest na Androida
CuteOne
  1. <img src="ptok.jpg">
  2. <input type="radio" name="odpowiedz" value="1">ptok
  3. <input type="radio" name="odpowiedz" value="2">karpik
  4. ...
  5.  
  6. $a = $_POST['odpowiedz'];
  7.  
  8. if($a == 1) echo 'ptok';
filipsiu
dzięki za pomoc, ale chodziło mi raczej o textbox <input type='text'...> ale dobra dzięki za pomoc.
SmokAnalog
Wbrew temu, co kolega napisał powyżej, nie nadawaj czasem obrazkom nazw zawierających odpowiedź smile.gif Czyli żadnych adidas.png, mcdonalds.png itd. Idealnie byłoby, gdybyś miał obrazki o nazwach typu 1.png, 14.png itd. lub s7dsf7h.png, s6a6dasvd.png itp. System quizowy aż prosi się o zgrabną bazę danych z pytaniami i odpowiedziami, tam byś sobie zaznaczył która odpowiedź jest prawidłowa.
filipsiu
z tymi nazwami to pamietam i sprawdzam czy nie popelniam tego bledu a z drugiej strony problem w tym ze jeszcze nie ogarniam baz danych czy kolega wyzej moze mi pomyc z baza ?
CuteOne
  1. <img src="ptok.jpg">
  2. <input type="text" name="odpowiedz" value="" />
  3. ...
  4.  
  5. $a = strtolower(trim($_POST['odpowiedz']));
  6.  
  7. if($a == 'ptok') echo 'brawo';


EDIT:

google -> mysql tutorial
filipsiu
@up ja zrobiłem tak i pytanie czy to też dobrze ?
  1. <?
  2. <img src="ptok.jpg">
  3.  
  4. <form>
  5. <input type="text" name="answer" value='Odpowiedź'>
  6. </form>
  7.  
  8.  
  9. $a = $_POST['answer'];
  10.  
  11. if($a == dupa)
  12. {
  13. echo 'OK';
  14. else
  15. echo 'Bad';
  16. }
  17. ?>
Crozin
1. <?php, nie <?.
2. Element form musi posiadać atrybut action oraz powinien posiadać atrybut method z wartością post jeżeli dane mają być wysłane w żądaniu HTTP typu POST.
3. Kod PHP obsługujący formularz powinien się wykonać tylko w przypadku gdy wysłano formularz, czyli gdy typ żądania to POST (if, $_SERVER['REQUEST_METHOD']). Dodatkowo przed użyciem $_POST['answer'] powinieneś sprawdzić czy element answer w ogóle istnieje w tablicy $_POST (isset/array_key_exists).
4. Tekst w PHP wprowadza się w apostrofach bądź cudzysłowie.
filipsiu
dzięki za wskazówki lecz z 1 się nie zgodzę gdyż <? też działa i w php5 jest ta 'funkcja' smile.gif
SmokAnalog
Crozin ma rację, póki się uczysz wyrabiaj sobie dobre nawyki. Wiele rzeczy działa w PHP co nie znaczy, że wszystkie są właściwe.
pedro84
Cytat(filipsiu @ 17.07.2012, 22:54:56 ) *
dzięki za wskazówki lecz z 1 się nie zgodzę gdyż <? też działa i w php5 jest ta 'funkcja' smile.gif

Aż w pewnym momencie trafisz na hosting gdzie short_tags jest ustawione na off i pupcia.
filipsiu
Ja tylko i wyłącznie korzystam z Serv4Web(bez reklamy) bo mam tam 70% zniżki :]
sebekzosw
error_reporting(E_ALL);

używaj sobie tego na początku pliku - i likwiduj wszystkie błędy i ostrzeżenia
filipsiu
Cytat(sebekzosw @ 19.07.2012, 12:30:07 ) *
error_reporting(E_ALL);

używaj sobie tego na początku pliku - i likwiduj wszystkie błędy i ostrzeżenia


w jakim celu ?
piotrex41
<FACEPALM>
Przecież napisał wyraźnie, że w celu wyświetlania i usuwania błędów...
pedro84
Cytat(filipsiu @ 18.07.2012, 19:10:48 ) *
Ja tylko i wyłącznie korzystam z Serv4Web(bez reklamy) bo mam tam 70% zniżki :]

Chyba sobie kpisz?

Cytat(filipsiu @ 20.07.2012, 13:52:25 ) *
w jakim celu ?

Żeby było zabawniej... Zajrzałeś do manuala? Będzie Ci wypluwać wtedy wszystkie błędy, warningi jakie masz.
filipsiu
1. Czemu ?!
2. No dobra masz rację, mój fail nie looknąłem do manuala smile.gif
a żeby nie robić new tematu.
Mam już skrypt na quiz:
  1. <img src='1.jpg'>
  2. <form action="" method="POST">
  3. <input type="text" name="odp" value="Odpowiedź" />
  4. <input type="submit" name"ok" value="OK" />
  5. </form>
  6. <?php
  7.  
  8. if (isset($_SESSION['user_id']) and isset($_SESSION['login']))
  9. {
  10. require('includes/conn.php');
  11. #TO NA DOLE TO DO TESTÓW
  12. echo "Jestes zalogowany. ";
  13. echo "Twój login to: ";
  14. echo $_SESSION['login'];
  15. echo $_SESSION['user_id'];
  16. #^^^TYLKO DO TESTÓW^^^
  17. if (isset($_POST['ok']))
  18. {
  19. $b = $_SESSION['user_id'];
  20. $a = $_POST['odp'];
  21. if ($a == 'ptaszek')
  22. {
  23. mysql_query('UPDATE users SET pkt=pkt+1 WHERE ID="$b"');
  24. echo 'Dobrze, dodano 1pkt!';
  25. }
  26. else
  27. {
  28. echo 'Zła odpowiedź!';
  29. }
  30. }
  31. }
  32. else
  33. {
  34. echo "Nie jestes zalogowany";
  35. echo "<a href='login.php'>Zaloguj się</a>";
  36. }
  37. ?>

Coś tu jest nie tak bo nie daje +1pkt za dobrą odp.
pedro84
1. Bo kiedyś będziesz chciał wrzucić coś na inny hosting i będzie klops. Ucz się dobrych nawyków, a nie błędów od samego początku.
filipsiu
a mógłbyś mi pomóc z problemem @2x up post
pedro84
Poczytaj czym się różnią apostrofy od cudzysłowów w PHP i umieszczaniu w nich zmiennych.
filipsiu
rozumiem, że tu jest problem:
kt=pkt+1 WHERE ID="$b"');
?
pedro84
Dokładnie.
filipsiu
zrobiłem:
mysql_query("UPDATE users SET pkt=pkt+1 WHERE id = '$b' ");
i nadal nie działa sad.gif
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.