Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP] odczyt danych
kojoto3
post
Post #1





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 29.12.2008

Ostrzeżenie: (10%)
X----


Chodzi o to że mam aniketę, gdzie zaznaczam kilka odpowiedzi, mogę jedną lub więcej
Co zmienić w skrypcie odczytującym aby brał to poduwagę.
Teraz mi wyświetla wszystkie, obojętnie ile zaznaczę.
  1. <?php
  2. echo "Rybą jest:<br/><br/>";
  3. if ($_POST['pole']) echo "- Karp<br/>";
  4.  
  5. else if ($_POST['pole'])echo "- Wieloryb<br/>";
  6.  
  7. else if ($_POST['pole'])echo "- Rekin<br/>";
  8.  
  9. else if ($_POST['pole'])echo "- Panda<br/>";
  10.  
  11. else if (!isset($_POST['pole']) and !isset($_POST['pole'])and !isset($_POST['pole'])and !isset($_POST['pole']))
  12. echo "Ups ... nic nie wybrałeś!<br/>";
  13.  
  14. echo "<br/><br/>";
  15. echo "<a href='zadanie8.php'>Powrót</a>";
  16. ?>
Go to the top of the page
+Quote Post
EarthCitizen
post
Post #2





Grupa: Zarejestrowani
Postów: 286
Pomógł: 70
Dołączył: 13.01.2009

Ostrzeżenie: (0%)
-----


Pokaż na początku formularz...

Co do skryptu to źle odczytujesz wartości tablicy $_POST['pole'], zamień na $_POST['pole'][0], $_POST['pole'][1], ..., $_POST['n'] ... A najlepiej to zrobić w pętli... pokaż tylko ten formularz...
Go to the top of the page
+Quote Post
kojoto3
post
Post #3





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 29.12.2008

Ostrzeżenie: (10%)
X----


  1. <?php
  2. //formatka do wprowadzania danych
  3. function displayCheckBox($form,$submit,$query,$data=array(),$solution=array())
  4. {
  5. echo "<h3>$query</h3>
  6. <form method ='post' action='$form'>
  7. <input type='checkbox' name='pole'/> $data[0]<br>
  8. <input type='checkbox' name='pole'/> $data[1]<br>
  9. <input type='checkbox' name='pole'/> $data[2]<br>
  10. <input type='checkbox' name='pole'/> $data[3]<br><br/>
  11. <input type=submit value='$submit'>";
  12. }
  13. // program
  14.  
  15. $data=array('Karp','Wieloryb','Rekin','Panda');
  16. $solution=array(1,0,1,0);
  17. displayCheckBox('wynik8.php','OK','Które zwierze jest rybą?',$data,$solution);
  18. ?>


i nie bardzo wiem jak zrobić aby zanaczenia porównywał z $solution i odpowiednio wyświetlał, że jest to ryba, albo że nie
Go to the top of the page
+Quote Post
EarthCitizen
post
Post #4





Grupa: Zarejestrowani
Postów: 286
Pomógł: 70
Dołączył: 13.01.2009

Ostrzeżenie: (0%)
-----


Poniższą tablicę przenieś sobie do oddzielnego pliku np. baza.php tak abyś mógł ją includować do skryptu z formularzem i skryptu weryfikującego wyniki...

  1. <?php
  2. $data = array('Karp','Wieloryb','Rekin','Panda');
  3. ?>


w formularzu jak chcesz użyć checkboxów aby dać możliwość przekazania kilku wyników to dodaj do pole - [] - tak jak poniżej, dla każdego inputa

Kod
<input type='checkbox' name='pole[]' value='0' /> $data[0]<br>
<input type='checkbox' name='pole[]' value='1' /> $data[1]<br>
<input type='checkbox' name='pole[]' value='2' /> $data[2]<br>
<input type='checkbox' name='pole[]' value='3' /> $data[3]<br>


Tak w ogóle to te inputy możesz zrobić w pętli...

Następnie w wynik8.php

  1. <?php
  2. include('baza.php');
  3.  
  4. if (!empty($_POST['pole']) {
  5.    foreach ($_POST['pole'] as $value) {
  6.        echo $data[$value] . '<br />';
  7.    }
  8. } else {
  9.    echo 'brak odpowiedzi';
  10. }
  11. ?>
Go to the top of the page
+Quote Post
kojoto3
post
Post #5





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 29.12.2008

Ostrzeżenie: (10%)
X----


coś jest nie tak
w linii if pokazuje błąd
Go to the top of the page
+Quote Post
rzymek01
post
Post #6





Grupa: Zarejestrowani
Postów: 592
Pomógł: 62
Dołączył: 3.08.2006

Ostrzeżenie: (0%)
-----


bo jest jeden nawias za malo?

trudno jest się przyjrzeć kodowi?
Go to the top of the page
+Quote Post
EarthCitizen
post
Post #7





Grupa: Zarejestrowani
Postów: 286
Pomógł: 70
Dołączył: 13.01.2009

Ostrzeżenie: (0%)
-----


Sorki, z palca to napisałem...
Go to the top of the page
+Quote Post
kojoto3
post
Post #8





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 29.12.2008

Ostrzeżenie: (10%)
X----


A jak zrobić aby porównywał z $solution
1 prawda
0 fałsz
Go to the top of the page
+Quote Post
EarthCitizen
post
Post #9





Grupa: Zarejestrowani
Postów: 286
Pomógł: 70
Dołączył: 13.01.2009

Ostrzeżenie: (0%)
-----


Nie bardzo rozumiem... Masz pytanie na które są 2 odpowiedzi: 1. Tak i 2. Nie ?
Go to the top of the page
+Quote Post
rzymek01
post
Post #10





Grupa: Zarejestrowani
Postów: 592
Pomógł: 62
Dołączył: 3.08.2006

Ostrzeżenie: (0%)
-----


Cytat(EarthCitizen @ 22.01.2009, 12:59:26 ) *
Sorki, z palca to napisałem...

to nie ty przepraszaj, tylko kojoto3, który dostał kod i pewnie robi tylko ctrl+v-> ctrl+s-> F5-> nie działa->musze napisac na forum :/
Go to the top of the page
+Quote Post
kojoto3
post
Post #11





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 29.12.2008

Ostrzeżenie: (10%)
X----


może to ja nie bardzo rozumie,
ale mi chodzi po co zmienna $solution=array(1,0,1,0) ?
w sumie to chciałem aby jak zanaczę nie rybę to żeby mi wyświetlał że to nie jest ryba, albo żeby nie wyświetlał "nie ryby"
Go to the top of the page
+Quote Post
EarthCitizen
post
Post #12





Grupa: Zarejestrowani
Postów: 286
Pomógł: 70
Dołączył: 13.01.2009

Ostrzeżenie: (0%)
-----


Cytat
może to ja nie bardzo rozumie,
ale mi chodzi po co zmienna $solution=array(1,0,1,0) ?
w sumie to chciałem aby jak zanaczę nie rybę to żeby mi wyświetlał że to nie jest ryba, albo żeby nie wyświetlał "nie ryby"

(IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) czy komuś jeszcze chce się śmiać ?(IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)

Jak się uspokoję to może wrócę do Twojego problemu... a Ty do tego czsu postaraj się sam zrozumieć, jaki miałeś zamiar wprowadzając tę zmienną
Go to the top of the page
+Quote Post
rzymek01
post
Post #13





Grupa: Zarejestrowani
Postów: 592
Pomógł: 62
Dołączył: 3.08.2006

Ostrzeżenie: (0%)
-----


(IMG:http://forum.php.pl/style_emoticons/default/dostal.gif)

mi się zdaję, że po prostu chcesz zrobić tak:
to jest jakiś quiz, i ty znasz prawidłową odpowiedx, a user ma to zgadnąć i teraz chcesz sprawdzić czy on podał dobrą odpowiedź, a w przypadku błędu zaznaczyć: no niestety, wszystko jest bardziej leniwe niż leniwiec (KMN) ?(IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)
Go to the top of the page
+Quote Post
kojoto3
post
Post #14





Grupa: Zarejestrowani
Postów: 14
Pomógł: 0
Dołączył: 29.12.2008

Ostrzeżenie: (10%)
X----


jeśli każdy by tak wszystko od razu rozumiał to po co się uczyć.
dolną część skryptu otrzymałem gotową i mam dokończyć aby działał
miło mi że Cię rozbawiłem, ale myślę że VICE VERSA w innych dziedzinach
a forum jest po to by sobie pomagać
Go to the top of the page
+Quote Post
EarthCitizen
post
Post #15





Grupa: Zarejestrowani
Postów: 286
Pomógł: 70
Dołączył: 13.01.2009

Ostrzeżenie: (0%)
-----


No nie bierz tak tego do siebie (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Człowieku, przecież tu się ludzie pocą, żebyś miał ten swój quiz, sondę czy co tam jeszcze...
Go to the top of the page
+Quote Post
rzymek01
post
Post #16





Grupa: Zarejestrowani
Postów: 592
Pomógł: 62
Dołączył: 3.08.2006

Ostrzeżenie: (0%)
-----


jeszcze raz przypatrz się problemowi, weź kartkę i ołówek i przemysl działanie aplikacji, potem spróbuj to zapisać w PHP
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 1.09.2025 - 05:14