Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [HTML][MySQL][PHP]Uporczywy " " i ' ' w formularzu.
Forum PHP.pl > Forum > Przedszkole
Doody
Mam następujący problem: mam sobie bazę danych MySQL, a w niej tabelę z nazwami firm. Powiedzmy że jakieś tam zapytanie SELECT wybrało następującą nazwę: Kowalski "SPEDYCJA" PPHU - zapisuje ją do zmiennej więc mam w skrócie (po pominięciu slash'owania itd.):

  1. $string='Kowalski "SPEDYCJA" PPHU';


Tą zmienną chcę wykorzystać w formularzu jako domyślną wartość, zatem wpisuje kod:

  1. echo'<form action="new_firma_add.php" method="post">';
  2. echo'<input type="text" name="f_nazwa" value="'.$string.'"/>';
  3. echo'<input type="submit" value="UPDATE" />';


I tu dochodzimy do problemu:
- jeśli mam value="'.$string.'" przeglądarka wypisze stringa jedynie do pierwszego " natomiast jeśli jest value='".$string."' wypisze do pierwszego '.

Na chwilę obecną nie pozwalam na wprowadzanie do bazy łańcuchów z apostrofami ale czy istnieje możliwość aby jakoś wyświetlić jako wartość domyślną (value) zarówno łańcuch z "" jak i z ''?
jaslanin
Dlatego należy robić tak:

  1. <?php
  2. $string = 2+2;
  3. ?>
  4.  
  5. <input type="text" name="f_nazwa" value="<?php echo $string ?>"/>
  6.  
Doody
@Jaslanin

To nic nie zmieni!

Tak czy inaczej przeglądarka dostanie coś takiego:

  1. <input type="text" name="f_nazwa" value="Kowalski "SPEDYCJA" PPHU"/>


Poza tym spróbuj tak oddzielić kod php i html jeśli wyciągasz dane z bazy w pętli while i mają one być zapisane w między znacznikami <td></td>



Dzięki Redeemer - wiedziałem że to musi być proste wink.gif

Taki kod jest ok:

  1. echo'<form action="new_firma_add.php" method="post">';
  2. echo'<input type="text" name="f_nazwa" value="'.htmlspecialchars($string).'"/>';
  3. echo'<input type="submit" value="UPDATE" />';
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.