Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MySQL][PHP]Automatyczne nadawanie nazw input`om
bwl
post 17.05.2018, 17:54:08
Post #1





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 10.04.2017

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


Witajcie.

Pobieram z bazy listę nazw leków (strona ma służyć aktualizacji ich ilości), przy każdej nazwie leku umieszczam input, tak aby użytkownik mógł do niego wpisać ilość dodawanego leku. Chciałbym, automatycznie nadać nazwy tymże inputom (name=), aby móc to później jakoś wysłać do bazy i tu się zawiesiłem.

Na frana próbowałem tak:
Kod
<?php
foreach ($lista_alfabetyczna as $lek)
{
    echo "<tr><td><label>{$lek ['nazwa']}<input name=\{$lek ['nazwa']}\" type=\"text\"></td></label>";
}
?>

No ale "Notice: Array to string conversion"

Z góry dzięki.
Go to the top of the page
+Quote Post
SmokAnalog
post 17.05.2018, 18:03:24
Post #2





Grupa: Zarejestrowani
Postów: 1 707
Pomógł: 266
Dołączył: 3.07.2012
Skąd: Poznań

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


Najprościej jest w takich sytuacjach robić jedną z dwóch rzeczy:

  1. Nazywać pola z [] na końcu, czyli np. name[], id[], type[] itd. Potem sklejasz je do siebie po indeksie w tablicy, bo będziesz miał kilka niezależnych tablic, ale ten sam indeks oznacza ten sam lek, np. $_POST['name'][3] i $_POST['id'][3] dotyczą tego samego leku.
  2. Nadawać inputom nazwy z ID w środku, np. name[42] (nazwa leku dla id=42), type[13] itd.


Ja osobiście wolę ten pierwszy sposób, bo lubię, kiedy nazwy inputów są stałe w HTML-u.
Go to the top of the page
+Quote Post
troian
post 18.05.2018, 08:21:06
Post #3





Grupa: Zarejestrowani
Postów: 184
Pomógł: 2
Dołączył: 3.02.2013

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


$lek [..] masz spację między tym i do echa próbujesz wywalić tablicę
Go to the top of the page
+Quote Post
bwl
post 18.05.2018, 12:12:43
Post #4





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 10.04.2017

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


@SmokAnalog mógłbyś mi to bardziej łopatologicznie objaśnić, najlepiej na przykładzie?
Jestem zupełnie początkujący wink.gif

@troian bez spacji Storm świeci na czerwono, a przeglądarka mówi:
Parse error: syntax error, unexpected '' (T_ENCAPSED_AND_WHITESPACE), expecting '-' or identifier (T_STRING) or variable (T_VARIABLE) or number (T_NUM_STRING)

Natomiast ze spacją działa tylko bez nadawania tych nazw.
Go to the top of the page
+Quote Post
nospor
post 18.05.2018, 12:17:27
Post #5





Grupa: Moderatorzy
Postów: 36 455
Pomógł: 6292
Dołączył: 27.12.2004




Cytat
bez spacji Storm świeci na czerwono, a przeglądarka mówi:
Parse error: syntax error, unexpected '' (T_ENCAPSED_AND_WHITESPACE), expecting '-' or identifier (T_STRING) or variable (T_VARIABLE) or number (T_NUM_STRING)

Walib ledem bo zjadles cudzyslow przy \{

echo "<tr><td><label>{$lek['nazwa']}<input name=\"{$lek['nazwa']}\" type=\"text\"></td></label>";


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

"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
bwl
post 18.05.2018, 13:10:13
Post #6





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 10.04.2017

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


Czyli mój sposób na frana zadziałał. Jestem z siebie dumny, a Wam pięknie dziękuję za pomoc !
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: 25.04.2024 - 16:46