Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php]W czym blad?
Green-sc
post 4.11.2006, 14:52:34
Post #1





Grupa: Zarejestrowani
Postów: 76
Pomógł: 0
Dołączył: 7.09.2006

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


Witam. Mam taki skrypt z formularzem. Wklepilem kawalek formularza i caly skrypt dodawania do bazy danych.
1. Czesc zawiera liste graczy w klanie. zaznacza sie je by pokazac kto gral w danym meczu.
2. To dodawanie formularza do BD mysql'a.

A pytanie oczywiste. Gdzie jest blad ? Wydaje mi sie ze w multiselect bo pierwszy raz z ta funcja mam do czynienia. Ale byc moze gdzies indziej mam blad. HELP.
  1. <?php
  2. <td>Sklad:</td>
  3. <td><select class='pole' name='sklad' size='$liczba_graczy' MULTIPLE>
  4.  ";
  5.  $query = mysql_query("Select * From user where stopien!='ulica' and stopien!='ban' and stopien!=''");
  6.  while($wynik=mysql_fetch_array($query)){
  7.  echo"<option class='pole'>".$wynik['nick']."</option>";}
  8.  
  9.  
  10.  echo"</select></td>
  11. ?>


/////////////////////////////
//DODANIE MECZU DO BD///////
///////////////////////////
  1. <?php
  2. elseif($_GET['dodaj'] == 2)
  3. { if ($_POST['temat'] && $_POST['mapa'] && $_POST['przeciwnik'] && $_POST['wynik_nasz'] && $_POST['wynik_wroga'] && $_POST['liga'] && $_POST['autor_rec'] && $_POST['recenzja'] && $_POST['stan'] && $_POST['tryb'] && $_POST['tag_wroga'] && $_POST['data'] && $_POST['sklad'])
  4. {
  5.  
  6.  
  7.  
  8. mysql_query("INSERT into mecze (temat, mapa, przeciwnik, wynik_nasz, wynik_wroga, liga, autor_rec, recenzja
    , stan, tryb, tag_wroga, data, sklad) VALUES ('"
    .$_POST[temat]."','".$_POST[mapa]."','".$_POST[przeciwnik]."','".$_POST[wynik_nasz]."','".$_POST[wynik_wroga]."','".$_POST[liga]."','".$_POST[autor_rec]."','".$_POST[recenzja]."','".$_POST[stan]."','".$_POST[tryb]."','".$_POST[tag_wroga]."','".$_POST[data]."','".$_POST[sklad]."')");
  9. }else{ echo"blad";}
  10. }
  11. ?>


Ten post edytował Green-sc 4.11.2006, 15:50:43
Go to the top of the page
+Quote Post
nospor
post 4.11.2006, 16:51:23
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Cytat
A pytanie oczywiste. Gdzie jest blad

Czy ty jakis quiz urządzasz czy oczekujesz pomocy? Jesli oczekujesz pomocy, to napisz laskawie czym objawia sie Twoj blad, czy dostajesz jakies errory lub cos podobnego.
Bo rozumiem ze ten kawalek kodu co tu pokazales to tylko wyrwana z kontekstu czesc?


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
php programmer
post 4.11.2006, 17:01:34
Post #3





Grupa: Zarejestrowani
Postów: 1 045
Pomógł: 5
Dołączył: 8.11.2004
Skąd: trójmiasto

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


W sekcji php nie możesz napisać sobie tak poprostu tagów HTML, musisz ująć je w echo
  1. <?php
  2. echo '<td><b>ewtwtwtwt</b></td>';
  3. ?>


Ten post edytował php programmer 4.11.2006, 17:01:56
Go to the top of the page
+Quote Post
Green-sc
post 5.11.2006, 00:14:39
Post #4





Grupa: Zarejestrowani
Postów: 76
Pomógł: 0
Dołączył: 7.09.2006

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


Cytat(nospor @ 4.11.2006, 16:51:23 ) *
Czy ty jakis quiz urządzasz czy oczekujesz pomocy? Jesli oczekujesz pomocy, to napisz laskawie czym objawia sie Twoj blad, czy dostajesz jakies errory lub cos podobnego.
Bo rozumiem ze ten kawalek kodu co tu pokazales to tylko wyrwana z kontekstu czesc?


Sory. Przejawia sie tym ze dodaje tylko ostatniego wybranego uzytkownika, reszta nie wiem czemu jest omijana.

Cytat(php programmer @ 4.11.2006, 17:01:34 ) *
W sekcji php nie możesz napisać sobie tak poprostu tagów HTML, musisz ująć je w echo
  1. <?php
  2. echo '<td><b>ewtwtwtwt</b></td>';
  3. ?>


echo jest tylko widac jego zakonczenie. 4 linijka.

To wie ktos jak to naprawic?
Go to the top of the page
+Quote Post
jarrod
post 5.11.2006, 00:20:51
Post #5





Grupa: Zarejestrowani
Postów: 312
Pomógł: 9
Dołączył: 14.10.2006
Skąd: warszawa

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


MULTIPLE tworzy z selecta tablicę. Więc użyj tych danych jak tablicy:

  1. <?php
  2. foreach($_POST['sklad'] as $sklad)
  3. {
  4.  //tutaj zapytanie
  5. }
  6. ?>
Go to the top of the page
+Quote Post
Green-sc
post 5.11.2006, 00:34:31
Post #6





Grupa: Zarejestrowani
Postów: 76
Pomógł: 0
Dołączył: 7.09.2006

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


w zapytaniu zamiast $_POST['sklad'] mam uzyc teraz $sklad?
Go to the top of the page
+Quote Post
jarrod
post 5.11.2006, 00:37:00
Post #7





Grupa: Zarejestrowani
Postów: 312
Pomógł: 9
Dołączył: 14.10.2006
Skąd: warszawa

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


wewnątrz pętli - tak.
Go to the top of the page
+Quote Post
Green-sc
post 5.11.2006, 00:40:49
Post #8





Grupa: Zarejestrowani
Postów: 76
Pomógł: 0
Dołączył: 7.09.2006

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


Kurcze cos mi nie chodzi. Mozesz wstawic mi to do skryptu? Bo za bardzo nie wiem chyba w ktorym miejscu.

Ten post edytował Green-sc 5.11.2006, 00:41:50
Go to the top of the page
+Quote Post
jarrod
post 5.11.2006, 00:58:21
Post #9





Grupa: Zarejestrowani
Postów: 312
Pomógł: 9
Dołączył: 14.10.2006
Skąd: warszawa

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


Cytat(Green-sc @ 5.11.2006, 00:40:49 ) *
Kurcze cos mi nie chodzi. Mozesz wstawic mi to do skryptu? Bo za bardzo nie wiem chyba w ktorym miejscu.

to może kup sobie książkę questionmark.gif Fakt -> jesteśmy na przedszolu. Ale nie sądzisz że to lekka przesada?
Zrób to zapytanie które robisz dodając nrekord ale wewnątrz pętli i zmień nazwę zmiennej. Tyle.
Go to the top of the page
+Quote Post
Green-sc
post 5.11.2006, 01:13:35
Post #10





Grupa: Zarejestrowani
Postów: 76
Pomógł: 0
Dołączył: 7.09.2006

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


  1. <?php
  2. foreach($_POST['sklad'] as $sklad)
  3. {
  4.  
  5. mysql_query("INSERT into mecze (temat, mapa, przeciwnik, wynik_nasz, wynik_wroga, liga, autor_rec, recenzja
    , stan, tryb, tag_wroga, data, sklad) VALUES ('"
    .$_POST[temat]."','".$_POST[mapa]."','".$_POST[przeciwnik]."','".$_POST[wynik_nasz]."','".$_POST[wynik_wroga]."','".$_POST[liga]."','".$_POST[autor_rec]."','".$_POST[recenzja]."','".$_POST[stan]."','".$_POST[tryb]."','".$_POST[tag_wroga]."','".$_POST[data]."','$sklad')");
  6. }
  7. ?>

A wynik taki:
Cytat
Warning: Invalid argument supplied for foreach() in /users/www/green/public_html/ae/admin/mecz.php on line 88


Ten post edytował Green-sc 5.11.2006, 01:14:39
Go to the top of the page
+Quote Post
nospor
post 6.11.2006, 08:01:21
Post #11





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




zapomniano ci jeszcze powiedziec, ze jesli select ma zwrocic tablice, to oprócz multiple, select musi miec nazwe tablicową, czyli u ciebie:
....name='sklad[]'....


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 00:53