Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [HTML][MySQL][PHP]php , zmienne i <form>
Forum PHP.pl > Forum > Przedszkole
caelian
jak w temacie :
Po krotce o tym co chce zrobic: Chce stworzyconlinowy system do tworzenia armi w warhammer Fantasy battle, Dotego bede potrzebowal malej albo raczej ogromnej pomocy gdyz wczesniej nie mialem nic wspolnego. Moj obecny kod strony wyglada tak:

  1. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  2. <title>Warhammer Army Creator</title>
  3. <link href="style.css" rel="stylesheet" type="text/css" />
  4. </head>
  5.  
  6. <table width="900" border="0" cellpadding="0" cellspacing="0" align="center" class="text">
  7. <tr>
  8. <td width="124">Wybierz Armię:</td>
  9. <td width="776">
  10. <form id="form1" name="armia" method="post" action="" >
  11. <select name="amia" id="amia">
  12. <option value="1">Beastman
  13. <option value="2">Bretonia
  14. <option value="3">Deamons of chaos
  15. <option value="4">Dark elves
  16. <option value="5">Dwarf
  17. <option value="6">The Empire
  18. <option value="7">heigh elves
  19. <option value="8">Lizardman
  20. <option value="9">Ogre kingdoms
  21. <option value="10">Orc and Goblins
  22. <option value="11">Skavens
  23. <option value="12">Tomb king
  24. <option value="13">Vampire counts
  25. <option value="14">Wariors of Chaos
  26. <option value="15">Wood Elves
  27. </select>
  28. <label for="amia"></label>
  29. </form></td>
  30. </tr>
  31. <tr>
  32. <td>Wpisz punktacje:</td>
  33. <td>
  34. <form id="form2" name="punktacja" method="post" action="">
  35. <input type="text" name="punktacja" id="punktacja" />
  36. </form></td>
  37. </tr>
  38. </body>


teraz 2 sprawy:
Jak cche zeby to działało:
1)Przy wyborze Armi chce aby byly dostepne jednostki powiazane tylko z wybrana armia.
2) w zaleznosci od tego jaka punktacja bedzie wpisana odpowiednie jednostki armi beda dostepne

Rozpiszę się nizej na ten temat aby ulatwic wam pomoc.

tabelka wyjasniajaca

wyjasnienie: max Postaci oznacza łączna liczbe bohaterow i lordow jaka mozna wybrac

wiem ze nalezy to zrobic za pomoca my sql w ktorym bedzie definicja jednostek ich wart pkt itdoraz ze zarowno dla <form> armia i <form>punktacja trzeba bedzie uzyc funkcji If

czy moge liczyc na wasza pomoc?
tehaha
Cytat(caelian @ 25.05.2010, 17:38:10 ) *
czy moge liczyc na wasza pomoc?

Pomoc? Tak. Gotowca? Nie
caelian
moze nie gotowca ale jak mowie jestem calkowicie zielony z php i mysql i nawwet nie wiem od czego zaczac ani jak to ugrysc wiec nie dziw sie ze rozpisalem sie tak bo chce otrzymac pomoc czy wskazowki ale nawet nie wiem czy dobrze kombinuje z tym
cros
Cytat(caelian @ 25.05.2010, 17:46:48 ) *
moze nie gotowca ale jak mowie jestem calkowicie zielony z php i mysql i nawwet nie wiem od czego zaczac ani jak to ugrysc wiec nie dziw sie ze rozpisalem sie tak bo chce otrzymac pomoc czy wskazowki ale nawet nie wiem czy dobrze kombinuje z tym

No to skoro jestes zielony z PHP i MYSQL, to jakiej pomocy oczekujesz?
My ci powiemy zrob to tak czy siak, a ty i tak nie bedziesz wiedzial o co chodzi, wiec jedynym wyjsciem byl by gotowiec, ale nie licz na to winksmiley.jpg
Poucz sie pierw PHP i MYSQL, bo skoro chcesz robic takie rzeczy bez ich znajomosci, to powodzenia zycze winksmiley.jpg

@Pedro, tez na to zwrocilem uwage, ale faktycznie sa jakies zwiechy, wiec wybacz mu winksmiley.jpg
pedro84
Cytat(caelian @ 25.05.2010, 17:46:48 ) *
moze nie gotowca ale jak mowie jestem calkowicie zielony z php i mysql i nawwet nie wiem od czego zaczac ani jak to ugrysc wiec nie dziw sie ze rozpisalem sie tak bo chce otrzymac pomoc czy wskazowki ale nawet nie wiem czy dobrze kombinuje z tym

A co to ma za znaczenie? To się naucz, jest tyle tutoriali w necie, że na pewno coś znajdziesz. Na razie nic do pomocy nie widzę, masz sam HTML...

PS wiesz, że na forach crossposting nie jest mile widziany, za to mile jest karany warnami? 3 tematy o tym samym, w dodatku, żadnej własnej inicjatywy...

@down: POMÓC! POMÓC! POMÓC! PomÓc! Poza tym, zaskoczę Cię ale manual jest jeden. lol. Po pierwsze to Ty napisz po polsku co chcesz osiągnąć (może narysuj?), wtedy może jakieś wskazówki dostaniesz.
caelian
powiem tak: wiem tyle wiem i widze jak tworzyc pojedyncze if, nie wiem jak umiescic w if 2 zmiennych podanych wyzej tak aby spelnialy podane przezemnie kryteria, umiem za to stworzyc tutorialowego if'a i kombinujac znim przez 2 dni nic nie wykombinowalem dlategop pisze tutaj i to jeszcze w dziale "przedszkole" gdzie powinienem otrzymac pomoc nie wiedzac nic na temat php a wy macie ale o to ze nic nie wiem...
tehaha
no właśnie w tym problem, że nic nie wiesz więc ewentualna pomoc musiałaby się składać z kilku stronicowego wykładu o podstawach podstaw a potem o podstawach, jak będziesz miał jakieś konkretne pytanie to Ci pomożemy, ale skoro nic nie wiesz z php to nie da się teraz Tobie pomóc bo nic nie zrozumiesz.

na początek musisz przerobić jakiś podstawowy kurs np. http://www.freewebmasterhelp.com/tutorials/phpmysql, po przerobieniu całego kursu i opanowaniu przesyłania i odbierania zmiennych między stronami, podstawowych zapytań do bazy mysql i pętli, możemy dopiero o czymś porozmawiać
cros
Cytat(caelian @ 25.05.2010, 17:52:35 ) *
wy tez mozecie pomuc wystarczy ze mnie nakierujecie i powiecie czego kiedy uzyc manuali jet pelno co do if czy innych funkcji ale coz tego kiedy nie wiem nawet jak skonstruowac to zapytanie

Juz cie nakierowalismy, ucz sie od podstaw PHP i tyle.
"Nakierowanie" w Twoim przypadku oznacza GOTOWIEC, na co mamy Cie nakierowac, skoro nie znasz podstaw?
caelian
ile kroc pisze na forum o php to nikt nigdy nie daje zadnych gotowcow mi jest potrzebna informacja na temat if ijak umiescic w if 2 zmienne tak by dzialaly zgodnie z opisem na poczatku JAK MOWILEM O FUNKCJACH CZYTALEM I WIEM JAK DZIALA IF I JAK STWORZYC ZAPYTANIE PROSTE ale nie mam pojecia jak zmontowac pola <form> tak by text byl umieszczany w tej zmiennej w oparciu o informacje podana w 2 polu
cros
Cytat(caelian @ 25.05.2010, 18:05:03 ) *
ile kroc pisze na forum o php to nikt nigdy nie daje zadnych gotowcow...

Dziwisz sie? Nie po to ktos poswieca lata na nauke, zeby komus pisac gotowce winksmiley.jpg
U mechanika samochodowego tez sie dziwisz, ze musisz zaplacic za glupi przeglad?
BTW. Twojego pytania i tak nie rozumiem winksmiley.jpg
tehaha
jeżeli w formularzu użyłeś metody do przesyłania danych post to możesz je odebrać używając tablicy $_POST, gdzie do tej danej odwołujesz się nazwą użytą w formularzu
  1. $armia = $_POST['armia'];

odebraną w ten sposób zmienną możesz wstawić do zapytania SQL i zapisać w bazie, nie wiem co mam Ci więcej napisać bo wyobraź sobie nie wiem jak działa warhammer i Twoja tabelka w żaden sposób nie ilustruje działania skryptu

ponadto jeżeli otwierasz tag html taki jak <option> to musisz go zamknąć </option> czyli:
  1. <option value="1">Beastman</option>


co do if/else to nie funkcja, tylko wyrażenie warunkowe i działa tak: http://www.pomoc.webcoding.pl/?sekcja=php&id=if
caelian
Cytat(tehaha @ 25.05.2010, 18:10:30 ) *
  1. $armia = $_POST['armia'];


czyli do odebrania zmiennej z dwóch tagów <form> robie tak:
  1. $armia = $_POST['armia'];
  2. $punktacja = $_POST['punktacja'];


ok to mam wyjasnione teraz jak utworzyc warunek if dla 2 zmiennych. Czyli piszac bardzo prosto chce: uzyc if dla 2 zmiennych majacych spelniac 1 warunek, wiem ze dla 1 zmiennej wyglada to tak:

  1. <?php
  2. if ($armia = beastman)
  3. {
  4. print("beastman");
  5. }
  6. ?>


ale jak teraz do tego warunku wpisac zmienna $puntacja w sposob: jesli $armia = beastman i $punktacja = /* przyklad*/ 1000 zrob cos tam
tehaha
  1. <?php
  2. if ($armia = 'beastman' && $punktacja >=1000)// && jest równoznaczne z and
  3. {
  4. //warunek oba warunki są spełnione
  5. print("beastman");
  6. } else
  7. {
  8. //jeden lub więcej warunków nie zostało spełnionych
  9. }
  10. ?>
cros
Cytat(caelian @ 25.05.2010, 18:31:49 ) *
  1. <?php
  2. if ($armia = beastman)
  3. {
  4. print("beastman");
  5. }
  6. ?>

Widac ze o instrukcjach warunkowych tez nie masz pojecia, bo jesli cos porownujesz to uzywasz "==", a jesli przypisujesz "=".

tehaha
@up smile.gif nawet nie zauważyłem tego
caelian
ok reasumujac:
  1. <?
  2. $armia = $_POST['armia'];
  3. $punktacja = $_POST['punktacja'];
  4.  
  5. if ($armia = 'beastman' && $punktacja >=1000)// && jest równoznaczne z and
  6. {
  7. //warunek oba warunki są spełnione
  8. print("tworzysz armie o punktacji 1000");
  9. }
  10. else
  11. {
  12. //jeden lub więcej warunków nie zostało spełnionych
  13. }
  14. ?>


i to dziala ladnie ale czy teraz moge to usprawnic? czyli:

  1. <?
  2. $armia = $_POST['armia'];
  3. $punktacja = $_POST['punktacja'];
  4.  
  5. if ($armia = 'beastman' && $punktacja >=1000)// && jest równoznaczne z and
  6. {
  7. //warunek oba warunki są spełnione
  8. print("tworzysz $armia = $_POST['armia'] o punktacji $_POST['punktacja']");
  9. }
  10. else
  11. {
  12. //jeden lub więcej warunków nie zostało spełnionych
  13. }
  14. ?>


i czy da sie jakos to zrobic inaczej? poniewaz jezleli mialbym tworzyc warunek if dla kazdej armi o kazdej wymienionej punktacji to ten kod bylby bardzo bardzo dlugi chcialbym tego uniknac.
W miejscu obecnego print bedzie polaczenie do tabelki mysql ale to puzniej. chcialbym aby ten skrypt byl bardziej dynamiczny tzn:
  1. if ($armia = 'beastman' && $punktacja >=$_POST['punktacja'])// iteraz ponizej bylby kod ktory laczy sie tabelka w mysql o nazwie 'beastman'.Dodatkowo w pozniejszej czesci php lub mysql'a maja byc warunki np takie: jesli $punktacja to nie wyswietlaj (przyklad) linii/wpisu w tabelce mysql LORDOWIE i Jedn. wyjatkowe. uprzedzam ze to informacja jest umieszczona po to byscie mogli okreslic czy ten skrypt tak zadziala.
  2. {
  3. //warunek oba warunki są spełnione
  4. print("tworzysz $armia = $_POST['armia'] o punktacji $_POST['punktacja']");
  5. }
tehaha
nie da się odpowiedzieć na Twoje pytanie bo jak na razie to tylko Ty wiesz jak to ma działać , możesz spróbować wsadzić do tablicy te zależności i nazwy pól i wykonać tą operację w pętli ale raczej z Twoim poziomem doświadczenia lepiej zrób oddzielny warunek dla każdego
  1. print("tworzysz $armia o punktacji $punktacja;
caelian
Cytat(caelian @ 25.05.2010, 18:59:11 ) *
czy da sie jakos to zrobic inaczej? poniewaz jezleli mialbym tworzyc warunek if dla kazdej armi o kazdej wymienionej punktacji to ten kod bylby bardzo bardzo dlugi chcialbym tego uniknac.
W miejscu obecnego print bedzie polaczenie do tabelki mysql ale to puzniej. chcialbym aby ten skrypt byl bardziej dynamiczny tzn:
  1. if ($armia = '$_POST['armia'] && $punktacja >=$_POST['punktacja'])// iteraz ponizej bylby kod ktory laczy sie tabelka w mysql o nazwie 'beastman'.Dodatkowo w pozniejszej czesci php lub mysql'a maja byc warunki np takie: jesli $punktacja to nie wyswietlaj (przyklad) linii/wpisu w tabelce mysql LORDOWIE i Jedn. wyjatkowe. uprzedzam ze to informacja jest umieszczona po to byscie mogli okreslic czy ten skrypt tak zadziala.
  2. {
  3. //warunek oba warunki są spełnione
  4. print("tworzysz $armia = $_POST['armia'] o punktacji $_POST['punktacja']");
  5. }


czy takie cos bedzie dzialac? wtedy zamiast robic osobnych warunkow dla kazdej armi okazdej punktacji mam 1 warunek ktory definiuje podlaczenie do tabelki w mysql.
tehaha
  1. $armia = '$_POST['armia'] && $punktacja >=$_POST['punktacja']

a co Ty chcesz sprawdzić takimi warunkami?
1. Jak cros słusznie przypomniał do porównania używa się == a nie =
2. chyba nie bardzo wiesz co robisz, bo najpierw przypisujesz wartość do $armia a potem sprawdzasz czy jest równa temu co przed chwilą do niej przypisałeś, bez sensu , to samo z $punktacja,
Powiem Ci tak: nie kombinuj zrób proste oddzielne warunki dla każdego przypadku i tyle to że napiszesz 100 czy 200 linijek kodu to uwierz mi, że to jest bardzo malutko ważne, żeby działało
caelian
  1. <?
  2. $armia = $_POST['armia'];
  3. $punktacja = $_POST['punktacja'];
  4.  
  5. if ($armia == '$_POST['armia'] && $punktacja == $_POST['punktacja'])
  6. {
  7. // teraz tutaj na podstawie tego warunku bedzie odniesie do mysql'a do odp tabelki armii oraz w zaleznosci od wybranej punktacji beda lub nie beda zablokowane pewne pomniejsze tabelki w danej armii
  8. }
  9. ?>


prosze powiedzcie czy to jest dobrze skonstruowane pozatym przy obecnej postaci Dreamwever wyswietla mi bledy w 4 linijce
lepmajster
Czlowieku myslisz ze ktos robi ci na zlosc, odsylajac cie do tutoriali i do nauki podstaw PHP?
Co to niby ma byc za instrukcja warunkowa?:
  1. <?
  2. $armia = $_POST['armia'];
  3. $punktacja = $_POST['punktacja'];
  4. if ($armia == '$_POST['armia'] && $punktacja == $_POST['punktacja'])
  5. {
  6. // teraz tutaj na podstawie tego warunku bedzie odniesie do mysql'a do odp tabelki armii oraz w zaleznosci od wybranej punktacji beda lub nie beda zablokowane pewne pomniejsze tabelki w danej armii
  7. }
  8. ?>

Otoz powiem Ci tylko tyle, ze ta instrukcja zawsze bedzie spelniona, a czemu?
Jak sie pouczysz to sie dowiesz!

PS
Dodatkowo wkradl ci sie jeden apostrof (') przed $_POST - stad ten blad.
tehaha
ale czy Ty zastanowiłeś się co Ty robisz w linijce 5??

rozpatrzmy to na przykładzie wybrania beastman

przypisujesz do $armia = 'beastmean', a potem sprawdzasz czy 'beastman' jest równy 'beastman' ........ to samo z punktacją.....

Uwierz mi jeżeli napisałeś 2 linijki skryptu i nie rozumiesz jak on działa, to napisz to najprościej jak się da bo nie uda Ci się tego bardziej zautomatyzować

// błąd wywala bo masz apostrof przed $_POST
cros
Cytat(caelian @ 25.05.2010, 19:46:19 ) *
  1. <?
  2. $armia = $_POST['armia'];
  3. $punktacja = $_POST['punktacja'];
  4.  
  5. if ($armia == '$_POST['armia'] && $punktacja == $_POST['punktacja'])
  6. {
  7. // teraz tutaj na podstawie tego warunku bedzie odniesie do mysql'a do odp tabelki armii oraz w zaleznosci od wybranej punktacji beda lub nie beda zablokowane pewne pomniejsze tabelki w danej armii
  8. }
  9. ?>


prosze powiedzcie czy to jest dobrze skonstruowane pozatym przy obecnej postaci Dreamwever wyswietla mi bledy w 4 linijce

Podstawy php, bo udowodniles, ze nawet tych if'ów nie znasz winksmiley.jpg
caelian
  1.  
  2. <?
  3. $armia = $_POST['armia'];
  4. $punktacja = $_POST['punktacja'];
  5.  
  6. if ($armia == 'Beastman' && $punktacja == '1000')
  7. {
  8. print("tworzysz '$armia' o punktacji 'punktacja'");
  9. }
  10. ?>


dobra macie racje zamieszalem jak 150 bo przeciez to co porownywalem bylo w zmiennej czyli tak jakby porownac 1 z 1 co bylo GLUPIE przyznaje.
Doszedlem do wniosku ze chyba wg tego co juz wiem ifem tego nie zrobie poniewaz majac te 2 zmienne moge juz operowac. teraz musze tylko stworzyc tabelki w mysql napisze ponownie co dalej jak juz bede mial ten kod

Dziekuje bardzo za pomoc i uswiadomienie mi paru bledow

PS jak uzyc print w warunku by wyswietlal on wartosc zmiennych tak jak zapisalem to wyzej czy jakos inaczej?
lepmajster
Cytat(caelian @ 25.05.2010, 20:08:40 ) *
PS jak uzyc print w warunku by wyswietlal on wartosc zmiennych tak jak zapisalem to wyzej czy jakos inaczej?

Najlepiej uzywaj echo.
Zeby wypisac wartosci zmiennych robisz tak.

  1. echo "imie: <b>$imie</b>"; // w cudzyslowie (nie apostrofie) mozna wstawiac zmienne, ale juz nie $_POST[] itd. Jesli wstawisz zmienna ewnatrz apostrofow, to wyswietli sie nazwa zmiennej a nie jej wartosc.
  2. echo 'imie: <b>'.$imie.'</b>'; // drugi sposob, tutaj mozna juz wstawiac co sie chce $_POST[] itd.
  3.  
  4. echo 'imie: <b>'; //
  5. echo $imie; // albo i tak :)
  6. echo '</b>'; //
caelian
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  5. <title>Warhammer Army Creator</title>
  6. <link href="style.css" rel="stylesheet" type="text/css" />
  7. </head>
  8.  
  9. <body>
  10. <table width="900" border="0" cellpadding="0" cellspacing="0" align="center" class="text">
  11. <tr>
  12. <td width="125">Wybierz Armię:</td>
  13. <td width="776">
  14. <form name="armia" method="post" action="" >
  15. <select name="amia" id="amia">
  16. <option value="1">Beastman</option>
  17. <option value="2">Bretonia</option>
  18. <option value="3">Deamons of chaos</option>
  19. <option value="4">Dark elves</option>
  20. <option value="5">Dwarf</option>
  21. <option value="6">The Empire</option>
  22. <option value="7">heigh elves</option>
  23. <option value="8">Lizardman</option>
  24. <option value="9">Ogre kingdoms</option>
  25. <option value="10">Orc and Goblins</option>
  26. <option value="11">Skavens</option>
  27. <option value="12">Tomb king</option>
  28. <option value="13">Vampire counts</option>
  29. <option value="14">Wariors of Chaos</option>
  30. <option value="15">Wood Elves</option>
  31. </select>
  32. <label for="amia"></label>
  33. </form></td>
  34. </tr>
  35. <tr>
  36. <td>Wpisz punktacje:</td>
  37. <td>
  38. <form id="form2" name="punktacja" method="post" action="">
  39. <input type="text" name="punktacja"/>
  40. </form></td>
  41. </tr>
  42. </table>
  43.  
  44. <?
  45. $armia = $_POST['armia'];
  46. $punktacja = $_POST['punktacja'];
  47.  
  48. if ($armia == 'Beastman' && $punktacja == '1000')
  49. {
  50. //warunek oba warunki są spełnione
  51. echo "tworzysz armię <b>$armia</b> o punktacji <b>$punktacja</b>";
  52. }
  53. ?>
  54. </body>
  55.  
  56.  
  57.  
  58. </html>


tak wyglada calosc jednak nawet po wyborze beastman i wpisaniu punktacji 1000 nic sie nie wyswietla zaden text

Tak mam server krasnal i na nim sprawdzam
oto link :

link do strony

powie mi ktos czemu nie dziala?
jaslanin
Tu masz taką przydatną funkcję:

  1. function print_pre ($var)
  2. {
  3.  
  4. echo "<pre>";
  5. print_r($var);
  6. echo "</pre>";
  7. }


Użyć jej w swoim przykładzie możesz tak:

  1. print_pre($_POST);


Zobaczysz wtedy co wysyłasz w formularzu, i powinieneś zobaczyć błąd

+++ Zauważyłem że masz tam dwa formularze, na raz można przesłać tylko jeden formularz, więc jeżeli masz dwie wartości które musisz przesłać naraz użyj 1 formularza
caelian
wpisalem w kod jak radziles zapisalem plik ale dalej nic sie nie wyswietla totalnie pusto
jaslanin
Twoje błędy:

I.
Linia 15, napisałeś

  1. <select name="amia" id="amia">

zamiast
  1. <select name="armia" id="armia">


II.
dwa formularze, w poniższym kodzie jest to poprawione

III.
Najpierw piszesz że opcja Beastman ma mieć wartość 1
  1. <option value="1">Beastman</option>

a potem sprawdzasz:
  1. if ($armia == 'Beastman' && $punktacja == '1000')

w Twoim przykładzie armia ma wartości tylko liczbowe:

  1. <option value="1">Beastman</option>
  2. <option value="2">Bretonia</option>
  3. <option value="3">Deamons of chaos</option>
  4. <option value="4">Dark elves</option>
  5. <option value="5">Dwarf</option>
  6. <option value="6">The Empire</option>
  7. <option value="7">heigh elves</option>
  8. <option value="8">Lizardman</option>
  9. <option value="9">Ogre kingdoms</option>
  10. <option value="10">Orc and Goblins</option>
  11. <option value="11">Skavens</option>
  12. <option value="12">Tomb king</option>
  13. <option value="13">Vampire counts</option>
  14. <option value="14">Wariors of Chaos</option>
  15. <option value="15">Wood Elves</option>



IV.
Nie dodałęś przycisku wyślij
  1. <input type='submit' value='wyslij'>


  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  5. <title>Warhammer Army Creator</title>
  6. <link href="style.css" rel="stylesheet" type="text/css" />
  7. </head>
  8.  
  9. <body>
  10. <table width="900" border="0" cellpadding="0" cellspacing="0" align="center" class="text">
  11. <tr>
  12. <td width="125">Wybierz Armię:</td>
  13. <td width="776">
  14. <form name="armia" method="post" action="" >
  15. <select name="armia" id="armia">
  16. <option value="1">Beastman</option>
  17. <option value="2">Bretonia</option>
  18. <option value="3">Deamons of chaos</option>
  19. <option value="4">Dark elves</option>
  20. <option value="5">Dwarf</option>
  21. <option value="6">The Empire</option>
  22. <option value="7">heigh elves</option>
  23. <option value="8">Lizardman</option>
  24. <option value="9">Ogre kingdoms</option>
  25. <option value="10">Orc and Goblins</option>
  26. <option value="11">Skavens</option>
  27. <option value="12">Tomb king</option>
  28. <option value="13">Vampire counts</option>
  29. <option value="14">Wariors of Chaos</option>
  30. <option value="15">Wood Elves</option>
  31. </select>
  32. <label for="amia"></label>
  33. </td>
  34. </tr>
  35. <tr>
  36. <td>Wpisz punktacje:</td>
  37. <td>
  38. <input type="text" name="punktacja"/>
  39. <input type='submit' value='wyslij'>
  40. </form></td>
  41. </tr>
  42. </table>
  43.  
  44. <?
  45.  
  46. function print_pre ($var)
  47. {
  48.  
  49. echo "<pre>";
  50. print_r($var);
  51. echo "</pre>";
  52. }
  53.  
  54.  
  55. print_pre($_POST);
  56.  
  57. $armia = $_POST['armia'];
  58. $punktacja = $_POST['punktacja'];
  59.  
  60. if ($armia == 1 && $punktacja == 1000)
  61. {
  62. //warunek oba warunki są spełnione
  63. echo "tworzysz armię <b>$armia</b> o punktacji <b>$punktacja</b>";
  64. }
  65. ?>
  66. </body>
  67.  
  68.  
  69.  
  70. </html>


To są naprawdę błahe błędy, z taką wiedzą gry nie napiszesz. O ile się nie poduczysz. Kup jakąś książkę o PHP&mySQL
Jeżeli 1 osoba mówi Ci że jesteś pijany to spoko, ale jak 5 to znaczy że trzeba się położyć
caelian
  1. 1.
  2. <option value="1">Beastman</option>


czyli zamiast 1 tez ma byc Beastman?

i po co mi przycisk wysylania skoro to robi klawisz enter?
jaslanin
1. Można to na wiele sposobów zrealizować tak by miało to ręce i nogi, zastosowanie liczb ma na pewno zaletę taką że potem wyszukując w mySQL można korzystać z wyszukiwania binarnego na liczbach które jest nieco szybsze niż wyszukiwanie na tekście
2. http://pl.wikipedia.org/wiki/U%C5%BCyteczn...8informatyka%29, wielu ludzi tych mniej zaawansowanych nawet nie wie że można użyć entera. tak jak np. niektórzy nazywają google przeglądarką, a zamiast adresy internetowe wpisywać w pole adresu przeglądarki internetowej wpisują go w google i dopiero przechodzą na stronę.
caelian
jas jak tylko uzylem twojego kody to to i tak nic nie zmienilo a do tego dreamweaver pokazuje mi bledy w kodzie samej tabelki a gdy mam 2x form uzyte wtedy wszystko dziala jak nalezy mozesz z tym pomuc?

pozatym skopiowalem wsyztko tak jak to ponaprawiales i oto efekt:

strona
pedro84
Cytat(caelian @ 25.05.2010, 22:21:45 ) *
jas jak tylko uzylem twojego kody to to i tak nic nie zmienilo a do tego dreamweaver pokazuje mi bledy w kodzie samej tabelki a gdy mam 2x form uzyte wtedy wszystko dziala jak nalezy mozesz z tym pomuc?

pozatym skopiowalem wsyztko tak jak to ponaprawiales i oto efekt:

strona


Kolejny raz Ci powtarzam, nie tędy droga, poczytwaj podstawy. Nie potrafisz nawet czytać kodu i nie mówię Ci tego w złej wierze.

Po prostu nie wiesz nic, kilka pojęć znasz, to wszystko, a i je mylisz. Zacznij od podstaw...
jaslanin
Spróbuj to wstawić.

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  5. <title>Warhammer Army Creator</title>
  6. <link href="style.css" rel="stylesheet" type="text/css" />
  7. </head>
  8.  
  9. <body>
  10. <form name="armia" method="post" action="" >
  11. <table width="900" border="0" cellpadding="0" cellspacing="0" align="center" class="text">
  12. <tr>
  13. <td width="125">Wybierz Armię:</td>
  14. <td width="776">
  15. <select name="armia" id="armia">
  16. <option value="1">Beastman</option>
  17. <option value="2">Bretonia</option>
  18. <option value="3">Deamons of chaos</option>
  19. <option value="4">Dark elves</option>
  20. <option value="5">Dwarf</option>
  21. <option value="6">The Empire</option>
  22. <option value="7">heigh elves</option>
  23. <option value="8">Lizardman</option>
  24. <option value="9">Ogre kingdoms</option>
  25. <option value="10">Orc and Goblins</option>
  26. <option value="11">Skavens</option>
  27. <option value="12">Tomb king</option>
  28. <option value="13">Vampire counts</option>
  29. <option value="14">Wariors of Chaos</option>
  30. <option value="15">Wood Elves</option>
  31. </select>
  32. <label for="amia"></label>
  33. </td>
  34. </tr>
  35. <tr>
  36. <td>Wpisz punktacje:</td>
  37. <td>
  38. <input type="text" name="punktacja"/>
  39. <input type='submit' value='wyslij'>
  40. </td>
  41. </tr>
  42. </table>
  43. </form>
  44.  
  45. <?php
  46.  
  47. function print_pre ($var)
  48. {
  49.  
  50. echo "<pre>";
  51. print_r($var);
  52. echo "</pre>";
  53. }
  54.  
  55.  
  56. print_pre($_POST);
  57.  
  58. $armia = $_POST['armia'];
  59. $punktacja = $_POST['punktacja'];
  60.  
  61. if ($armia == 1 && $punktacja == 1000)
  62. {
  63. //warunek oba warunki są spełnione
  64. echo "tworzysz armię <b>$armia</b> o punktacji <b>$punktacja</b>";
  65. }
  66. ?>
  67. </body>
  68.  
  69.  
  70.  
  71. </html>
  72.  


Nie jest niepoprawny, tylko niezgodny ze standardami, ale to praktycznie w działaniu nie przeszkadza.

A to niewyświetlanie pewnie wynika z tego że masz wyłączone short_open_tag w php.ini

Jeżeli masz to wyłączone to kod php musisz obejmować w
  1. <?php
  2. //kod
  3. ?>


a nie możesz tak:
  1. <?
  2. // kod
  3. ?>

  1. <?= $zmienna ?>


Więc dobrze by było włączyć php.ini
caelian
ok to mam juz zalapane.

nameczylem z durnym IF CALKOWICIE zbednie tak wyglada kod i dziala aczkolwiek czemu wyswietla sie ten text na dzien obry o nie zdefiniowaniu?Odwiedź moją stronę

a tak wyglada caly kod:
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  4. <title>Warhammer Army Creator</title>
  5. <link href="style.css" rel="stylesheet" type="text/css" />
  6. </head>
  7.  
  8. <table width="900" border="0" cellspacing="0" cellpadding="0" align="center" class="text">
  9. <td width="125" height="24">Wybierz Armię: </td>
  10. <td width="775" rowspan="2">
  11. <form name="armia" method="post" action="" >
  12. <select name="armia" id="armia">
  13. <option value="Beastman">Beastman</option>
  14. <option value="Bretonia">Bretonia</option>
  15. <option value="Daemons of Chaos">Deamons of chaos</option>
  16. <option value="Dark elves">Dark elves</option>
  17. <option value="Dwarf">Dwarf</option>
  18. <option value="The Empire">The Empire</option>
  19. <option value="Heigh">Heigh Elves</option>
  20. <option value="Lizardman">Lizardman</option>
  21. <option value="Ogre Kingdoms">Ogre kingdoms</option>
  22. <option value="Orc and Goblin">Orc and Goblins</option>
  23. <option value="Skavens">Skavens</option>
  24. <option value="tomb King">Tomb King</option>
  25. <option value="Vampire Counts">Vampire Counts</option>
  26. <option value="Wariors of Chaos">Wariors of Chaos</option>
  27. <option value="Wood Elves">Wood Elves</option>
  28. </select><br />
  29. <input type="text" name="punktacja"/>
  30. <input type='submit' value='wyslij'/>
  31.  
  32. </form>
  33.  
  34. </td>
  35. <tr height="24">
  36. <td height="24">Wpisz punktacje</td>
  37. </tr>

  1. <?php
  2. $armia = $_POST['armia'];
  3. $punktacja = $_POST['punktacja'];
  4.  
  5. echo "tworzysz armię <b>$armia</b> o punktacji <b>$punktacja</b>";
  6. ?>
  7. </body>
  8. </html>
jaslanin
chodzi o to że przed wysłaniem formularza tablica jest pusta. Innymi słowy przed wysłaniem formularza w tablicy $_POST nie masz nic, co zresztą pokazuje moja funkcja print_pre.

Nie jest to błąd tylko uwaga, możesz zmniejszyć http://www.php.net/manual/en/function.error-reporting.php albo zrealizować to kodem, poprzez sprawdzenie czy formularz został wysłany.

+ Bez tej starej instrukcji warunkowej, potrzebujesz nowej która by sprawdzała czy formularz został już wysłany bo bez sensu tak wyświetlać tekst "worzysz armię..." bez żadnych danych.
thek
Ech... caelian... Jeszcze jeden post w tym temacie, w którym zamiast sięgnąć do manuala lub szukaj tego forum walniesz banalne pytanie to temat zamknę. Bo widzę, że już 2 strony Ci użytkownicy forum mówią co masz źle i starają naprowadzić lub dają gotowce wręcz, a Ty kopiujesz rozwiązania bez nawet ułamka sekundy użycia własnego rozumu by dostosować je do swoich potrzeb i robisz przez to kolejne byki sciana.gif
caelian
owszem aczkowlwiek tak dlugo jak kod php m,am umieszczony poza tabelka to wsyztko dziala jak ma dzialac natomiast jak tylko wrzucam go do tabelki toodrazu wyswietla inaczej nie wiedziec czemu
kod php poza tabelka Odwiedź moją stronę
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  4. <title>Warhammer Army Creator</title>
  5. <link href="style.css" rel="stylesheet" type="text/css" />
  6. </head>
  7. <body >
  8.  
  9. <table width="900" border="0" cellspacing="0" cellpadding="0" align="center" class="text">
  10. <td width="125" height="24">Wybierz Armię: </td>
  11. <td width="775" rowspan="2">
  12. <form name="armia" method="post" action="" >
  13. <select name="armia" id="armia">
  14. <option value="Beastman">Beastman</option>
  15. <option value="Bretonia">Bretonia</option>
  16. <option value="Daemons of Chaos">Deamons of chaos</option>
  17. <option value="Dark elves">Dark elves</option>
  18. <option value="Dwarf">Dwarf</option>
  19. <option value="The Empire">The Empire</option>
  20. <option value="Heigh">Heigh Elves</option>
  21. <option value="Lizardman">Lizardman</option>
  22. <option value="Ogre Kingdoms">Ogre kingdoms</option>
  23. <option value="Orc and Goblin">Orc and Goblins</option>
  24. <option value="Skavens">Skavens</option>
  25. <option value="tomb King">Tomb King</option>
  26. <option value="Vampire Counts">Vampire Counts</option>
  27. <option value="Wariors of Chaos">Wariors of Chaos</option>
  28. <option value="Wood Elves">Wood Elves</option>
  29. </select><br />
  30. <input type="text" name="punktacja"/>
  31. <input type='submit' value='wyslij'/>
  32.  
  33. </form>
  34.  
  35. </td>
  36. <tr height="24">
  37. <td height="24">Wpisz punktacje</td>
  38. </tr>

  1. <?php
  2. $armia = $_POST['armia'];
  3. $punktacja = $_POST['punktacja'];
  4.  
  5. //warunek oba warunki są spełnione
  6. echo "tworzysz armię <b>$armia</b> o punktacji <b>$punktacja</b>";
  7. ?>
  8. </body>
  9. </html>

kod php w tabelce
Odwiedź moją stronę

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  4. <title>Warhammer Army Creator</title>
  5. <link href="style.css" rel="stylesheet" type="text/css" />
  6. </head>
  7. <body class="text">
  8.  
  9. <table width="900" border="0" cellspacing="0" cellpadding="0" align="center" class="text">
  10. <td width="125" height="24">Wybierz Armię: </td>
  11. <td width="775" rowspan="2"><form name="armia" method="post" action="" >
  12. <select name="armia2" id="armia">
  13. <option value="Beastman">Beastman</option>
  14. <option value="Bretonia">Bretonia</option>
  15. <option value="Daemons of Chaos">Deamons of chaos</option>
  16. <option value="Dark elves">Dark elves</option>
  17. <option value="Dwarf">Dwarf</option>
  18. <option value="The Empire">The Empire</option>
  19. <option value="Heigh">Heigh Elves</option>
  20. <option value="Lizardman">Lizardman</option>
  21. <option value="Ogre Kingdoms">Ogre kingdoms</option>
  22. <option value="Orc and Goblin">Orc and Goblins</option>
  23. <option value="Skavens">Skavens</option>
  24. <option value="tomb King">Tomb King</option>
  25. <option value="Vampire Counts">Vampire Counts</option>
  26. <option value="Wariors of Chaos">Wariors of Chaos</option>
  27. <option value="Wood Elves">Wood Elves</option>
  28. </select>
  29. <br />
  30. <input type="text" name="punktacja"/>
  31. <input type='submit' value='wyslij'/>
  32. </form></td>
  33. <tr height="24">
  34. <td height="24">Wpisz punktacje</td>
  35. </tr>
  36. <tr height="24">
  37. <td height="24" colspan="2">

  1.  
  2. <?php
  3. $armia = $_POST['armia'];
  4. $punktacja = $_POST['punktacja'];
  5.  
  6. //warunek oba warunki są spełnione
  7. echo "tworzysz armię <b>$armia</b> o punktacji <b>$punktacja</b>";
  8. ?>
  9.  
  10. </td>
  11. </tr>
  12. </table>
  13. </body>
  14. </html>


dlaczego tak sie dzieje?
pedro84
Cytat(thek @ 26.05.2010, 00:46:25 ) *
Ech... caelian... Jeszcze jeden post w tym temacie, w którym zamiast sięgnąć do manuala lub szukaj tego forum walniesz banalne pytanie to temat zamknę. Bo widzę, że już 2 strony Ci użytkownicy forum mówią co masz źle i starają naprowadzić lub dają gotowce wręcz, a Ty kopiujesz rozwiązania bez nawet ułamka sekundy użycia własnego rozumu by dostosować je do swoich potrzeb i robisz przez to kolejne byki sciana.gif


Ludzie... Trzymajcie mnie, bo po prostu padnę. Wiesz co to manual? wiesz co to Google? Wpisz sobie w swój input choćby
Kod
<script type="text/javascript">alert('vfvfv');</script>
a zobaczysz, że to nie ma najmniejszego sensu!!!
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.