Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Przekazywanie zmiennych w cudzyslowach
sappa
post
Post #1





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 2.01.2007

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


Witam

Chce przekazac w przez post stringa w ktorym sa cudzyslowy
W zminnej jest cos takiego "$_POST[kod]","$_POST[nazwa]","$_POST[pojemnosc]"
a po odczytanui z posta mam tylko $_POST[kod].

Kod w którym zapisuje do zmiennej
  1. <?php
  2. echo '<center><h3>Dodaj '.$_POST[tab].'</h3></center><br>';
  3. $select="show columns from $_POST[tab];";
  4. $zapytanie = mysql_query($select) or die("Bladz zapytania o kolumny");
  5. while ($wiersz = mysql_fetch_array($zapytanie)) {
  6. echo $wiersz['Field'].'
  7. <input class="input" type="text" name='.$wiersz['Field'].'><br>';
  8. $pola.='"$_POST['. $wiersz['Field'].']",';
  9. ?>

A odczyt
  1. <?php
  2. $pola=substr($_POST["pola"], 0, strlen($_POST["pola"])-1);
  3. $insert="insert into $_POST[tabela] values ($pola);";
  4. ?>
Go to the top of the page
+Quote Post
cadavre
post
Post #2





Grupa: Zarejestrowani
Postów: 472
Pomógł: 7
Dołączył: 7.12.2005
Skąd: Gliwice

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


Stosuj konkatenacji tj. w pierwszej linijce (echo).
Więc np:
  1. <?php
  2. $select="show columns from " . $_POST['tab'] . "";
  3. ?>


W MySQL nie potrzeba średnika na końcu query; również tutaj na końcu nie potrzeba ."" gdyż jest to pusty string.

Staraj się zapisywać arraye w postaci (patrz dokładnie na cudzysłowy):
  1. <?php
  2. $_POST['nazwa'];
  3. ?>


Masz strasznie namieszane rodzai cudzysłowów. Raz " raz ' raz w ogóle bez łączenie zmiennych i stringów. Popraw format i poczytaj o dobrych nawykach w formatowaniu kodu. Google. (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
sappa
post
Post #3





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 2.01.2007

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


Thx za uwagi.

Z tymi namieszanymi cudzyslowami wnosze ze chodzi ci o ta linijke
  1. <?php
  2. $pola.='"$_POST['. $wiersz['Field'].']",';
  3. ?>

to w tym caly sęk. bo chodzi o to zeby przekazac ciag "$_POST[kod]","$_POST[nazwa]".. itd.
Wymagane jest to zeby przkazac do inserta varchar'a bo musi byc w " ".
Go to the top of the page
+Quote Post
cadavre
post
Post #4





Grupa: Zarejestrowani
Postów: 472
Pomógł: 7
Dołączył: 7.12.2005
Skąd: Gliwice

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


  1. <?php
  2. $pola.='"$_POST['. $wiersz['Field'].']",';
  3. ?>
Nie możesz do pojedynczego wstawić podwójnego bo wtedy nie będzie widoczna zmienna. BTW Dlaczego musi być w "? Ja zapisałbym to tak:
  1. <?php
  2. $pola.="'" . $_POST[ $wiersz['Field'] ] . "',";
  3. ?>
jest poprawnie (sprawdzałem). Przydatną rzeczą przy takim zapisywaniu jest kolorowanie składni...
Go to the top of the page
+Quote Post

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: 4.10.2025 - 04:46