Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Nie wyświetla zmiennej w input
Forum PHP.pl > Forum > Przedszkole
deha21
Mam dziwny problem. Nie wyświetla mi zmiennej w VALUE w INPUT.
  1. $name=convert($row['name'],2); // funkcja działa i wyświetla wartość
  2. echo '<form action="" method="POST">
  3. Nazwa:<input type="text" name="name" value="',$name,'"><br>
  4. </form>';

Wpisując w VALUE jakis wyraz, wyświetla go. Jak wpiszę convert($row['name'],2) to nic nie wyświetla. Dlaczego tak się dzieje?
Daiquiri
Po co Ci te przecinki wkoło ,$name,? Tam chyba miały być kropki.
deha21
Z kropkami tez nie działa.
Daiquiri
Zapytam inaczej: co Ci nie działa? Skoro echo $name przed formularzem wyświetla Ci dane, to input też będzie. Jesteś pewien, że convert($row['name'],2); zawsze zwraca Ci dane? Przypisz sobie $name = "ala ma kota" i zobacz czy zadziała (tylko wersja z kropkami).
deha21
Wiem, że powinien ale właśnie chodzi o to że nie wyświetla. I to jest zastanawiające.
Daiquiri
Przypisz coś statycznego do $name.
deha21
Statyczne działa.
  1. $name=convert("blablabla",2);

to też działa
Daiquiri
No to masz problem z $row['name'] a nie inputem. Nie wiem co to jest, bo nie podałeś więcej kodu.
deha21
Cały kod:
  1. $result=mysql_query("SELECT * FROM baza WHERE id='".$id."'");
  2. $row=mysql_fetch_assoc($result);
  3. $name=convert($row['name'],2);
  4. echo '<form action="" method="POST">
  5. Nazwa:<input type="text" name="name" value="',$name,'"><br>
  6. </fieldset>
  7. </form>';

Nie wiem jak to interpretować... Przecież $row['name'] pobiera poprawnie, tyle że nie wyswietla go w inpucie. Totalnie bezsensu :/
Daiquiri
Wyświetl sobie przed formularzem echo $row['name']. Czy convert może przyjmować takie zmienne?
deha21
Przed formularzem wyświetla. Wszędzie wyświetla tylko nie w VALUE...
Convert może przyjmować takie zmienne, to funkcja do filtrowania danych.
Daiquiri
Jeżeli echo $name przed formularzem też Ci coś wyświetla a to samo $name w formularzu nie, to: albo nie zamieniłeś tych przecinków na kropki, albo ja muszę wypić kawę smile.gif.
deha21
Z kropkami czy przecinkami, nie działa. Ale generalnie przecinki zamiast kropek działają i słyszałem że jest to nieco szybsze, dlatego stosuję.
Daiquiri
Jeżeli zamiast $name = convert() wstawisz $name = "Ala ma kota" i to działa, znaczy, że jednak coś nie tak jest z wynikiem tej funkcji. Zobacz czy coś Ci się wyświetla w źródle strony.
deha21
Jesteś genialny!
Wartość $name to "Raz dwa trzy" (razem z cudzysłowem). Dlatego wyświetlało mi w kodzie: value raz dwa trzy"

Czyli problem jest z filtrowaniem... no i z cudzysłowem w nazwie, co da się rozwiązać przez filtrowanie. Pokombinuję dzięki biggrin.gif
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.