Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [SQL][MSSQL][PHP] Zapętlenie w formularzu
Aui06
post
Post #1





Grupa: Zarejestrowani
Postów: 44
Pomógł: 0
Dołączył: 27.03.2014

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


Witam

Mam problem z dodawaniem z edycją tabeli w bazie danych.

Dane dodawane są za pomocą formularza. Przy pierwszym wprowadzeniu problemu nie ma. Jednak kiedy chce edytować zawartość formularza edytowany jest jedynie 1-wszy rekord, który następnie dodaje się kilkakrotnie do bazy. Co ciekawe przy kolejnym zapisie znika zawartość prawidłowo zapisanych pól mimo iż nie ma w kodzie Delate.

Formularz przekazuje zawartość pól jednak się one nie zapisują. Jest tak jakby poniższy kod zapętlał się na 1 rekordzie i nie potrafił dodać innych.

  1. if ((int)$_POST['yes']){
  2.  
  3. $idr = sed_import('idr', 'P', 'INT');
  4. $ids = $khid;
  5. //$ids = $_POST['a'];
  6. $idrs = $_POST['idrs'];
  7. $atyp = $_POST['atyp'];
  8. $idpol = $_POST['idpol'];
  9.  
  10. $sq5 = sed_sql_query("SELECT COUNT(*) FROM Planer2_plus_sl_pola");
  11. $ec = mysql_fetch_row($sq5);
  12.  
  13.  
  14. $sk= $ec[0] - 1;
  15.  
  16. for ($i = 0; $i <= $sk; $i++) {
  17.  
  18.  
  19. $sql2a = sed_sql_query("SELECT COUNT(*) FROM planer2_plus_tw_pola WHERE pp_IdTowarS = '".$ids."' AND pp_Idpola = '".$idpol[$i]."'");
  20. $sec = mysql_fetch_row($sql2a);
  21.  
  22. if ($sec[0] > 0){
  23. $sql = sed_sql_query("UPDATE planer2_plus_tw_pola SET pp_IdTowarS = '".$ids."', pp_Idpola = '".$idpol[$i]."', pp_Wartosc ='".$atyp[$i]."' WHERE pp_idTowarS = '".$ids."'");
  24.  
  25. }
  26. if ($sec[0] == 0) {
  27. $sql = sed_sql_query("INSERT INTO planer2_plus_tw_pola (pp_IdTowarS, pp_Idpola, pp_Wartosc) VALUES ('".$ids."', '".sed_sql_prep($idpol[$i])."', '".sed_sql_prep($atyp[$i])."')");
  28.  
  29. }
  30. //header("Location: plug.php?r=listatowarow&a=$ids&b=2");
  31. }
  32.  
  33.  
  34. }


Czy ktoś wie co zrobić by edytował rekordy zgodnie z formularzem, a nie dodawał w cały czas pierwszy. To zapewne banalny błąd, ale nie widzę gzie go popełniam.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
com
post
Post #2





Grupa: Zarejestrowani
Postów: 3 034
Pomógł: 366
Dołączył: 24.05.2012

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


dobrze to od początku co przechowujesz w tabeli Planer2_plus_sl_pola, to po pierwsze, bo z niej wyliczasz te ilość obróceń pętli a potem dodajesz do innej tabeli to.. pod drugie jak zmieniasz $idpol[$i] dla 1 id to w tym polu masz wartość ostatnią wiec warunek nigdy się nie spełni dlatego nie działa, dlatego mówię ze nie może być na sztywno id bo musisz do każdego rekordu dodać te wartość z pod indexu, nie da się dodać do 1 wszystkich w taki sposób (IMG:style_emoticons/default/smile.gif)

Ten post edytował com 1.04.2014, 14:06:21
Go to the top of the page
+Quote Post

Posty w temacie
- Aui06   [SQL][MSSQL][PHP] Zapętlenie w formularzu   1.04.2014, 12:25:48
- - Kshyhoo   Pokaż kod formularza. Musisz działać na tablicy, t...   1.04.2014, 12:28:52
- - nospor   var_dump($idpol); var_dump($sec); co wys...   1.04.2014, 12:36:40
- - Aui06   Formularz wygląda tak [PHP] pobierz, plaintext ...   1.04.2014, 12:39:36
- - nospor   Z kodu co pokazalas wyglada, ze pola idpol nie leż...   1.04.2014, 12:44:04
- - Aui06   A czy pole idpol nie jest w formularzu w linijce 7...   1.04.2014, 12:49:15
- - nospor   A juz widze.... ty to mialas w zmiennej.... ok. T...   1.04.2014, 12:51:07
- - Aui06   $idpol - przekazuje id pola z którego korzyst...   1.04.2014, 12:56:16
- - nospor   Podalem ci wyraznie co masz zrobic. Podalem ci kod...   1.04.2014, 13:11:33
- - Aui06   Nie bardzo wiem co znaczy var_dump($idpol); v...   1.04.2014, 13:22:24
- - com   bez echo na drugi raz bo jest bez sensu, dostałeś ...   1.04.2014, 13:29:40
- - nospor   Dziekuje. Wlasnie to mialas zrobic.... ino ze bez ...   1.04.2014, 13:29:48
- - Aui06   $ids = $khid to ma być na sztywno. Mam ...   1.04.2014, 13:39:41
- - nospor   Skoro $ids jest poprawne to to zapytanie: ...   1.04.2014, 13:41:19
- - com   nie może być na sztywno bo masz: WHERE pp_idTowarS...   1.04.2014, 13:45:29
- - Aui06   To jest dobrze. Jak pisałam mam 3 tablice. A ta z...   1.04.2014, 13:55:23
- - com   dobrze to od początku co przechowujesz w tabeli Pl...   1.04.2014, 14:05:23
- - Aui06   To jak to ma wyglądać? Bo powinło działać: Na poc...   1.04.2014, 14:25:04
- - com   tak ja wiem do czego służy for, chodziło o to że z...   1.04.2014, 14:48:11
- - Aui06   Ja się chyba z tobą nie mogę dobrze zrozumieć: Pl...   1.04.2014, 15:09:54
- - com   Planer2_plus_sl_pola - ok no dlatego zapytałem, bt...   1.04.2014, 15:33:39
- - Aui06   Chce mieć coś bardziej takiego Zasada działania...   1.04.2014, 19:20:43
- - com   tak ja temu nie przeczę, własnie o czymś takim mów...   2.04.2014, 00:01:29
- - Aui06   Chyba obalę twoją teorie oto wynik operacji echo...   2.04.2014, 07:48:43
- - nospor   1) Skoro twoje pola to liczby, to masz je zapisywa...   2.04.2014, 08:04:25
- - Aui06   W bazie otrzymuje wyniki poprawne, ale z ciekawośc...   2.04.2014, 08:50:21
- - nospor   cos krecisz.... przeciez robilas juz var_dump(...   2.04.2014, 09:08:00
- - Aui06   Masz rację trochę na grzebałam w kodzie próbując n...   2.04.2014, 09:17:04
- - nospor   Dobrze ze chociac jedna 1. Widac postęp Skoro je...   2.04.2014, 09:48:57
- - Aui06   Na pewno jest 1 tak jak w przykładzie pp_IdTowar...   2.04.2014, 10:11:28
- - nospor   Jak to pierwsze pole 7 razy? Pokaz aktualny kod ja...   2.04.2014, 10:50:35
- - Aui06   Jak z aktualizuje wyświetla się to tak: [PHP] pob...   2.04.2014, 11:12:24
- - nospor   Mi chodzilo bys pokazala jeszcze raz aktualny kod ...   2.04.2014, 11:14:14
- - Aui06   [PHP] pobierz, plaintext $idr = sed_import('id...   2.04.2014, 11:29:36
- - nospor   Mowilem ci juz ze liczby masz wkladac/porownywac j...   2.04.2014, 11:50:50
- - Aui06   Mam dwa rodzaje wyników dla: var_dump($sec[0...   2.04.2014, 12:31:10
- - nospor   No, czyli count zwraca ci 16 wiec powinien robic U...   2.04.2014, 12:47:08
- - Aui06   RE: [SQL][MSSQL][PHP] Zapętlenie w formularzu   2.04.2014, 14:01:51
- - nospor   magic Gdybym mial to przed nosem, to moze cos by ...   3.04.2014, 09:01:44
- - com   Cytatecho "SELECT COUNT(*) FROM planer2_plus_...   6.04.2014, 14:11:30
- - Aui06   Dziękuję za pomoc w końcu napisałam to zupełnie in...   7.04.2014, 08:30:16


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: 28.12.2025 - 16:27