Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php][mysql] podawanie zmiennymch w funkcji
Jerem!asz
post
Post #1





Grupa: Zarejestrowani
Postów: 45
Pomógł: 2
Dołączył: 31.01.2007
Skąd: PL

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


witam,
mam oto problem tego typu, chce umiescic nowy wiersz w kolumnie w tabeli mysql, uzywam takiego mnmiej wiecej kodu

  1. <?php
  2.  if (isset($_POST['tresc']))
  3. {
  4.  $sql_tabela = "komentarze";
  5.  $tresc = $_POST['tresc'];
  6.  $autor = $_POST['autor'];
  7.  mysql_query("INSERT INTO komentarze 
  8. VALUES
  9.  (NULL,'$idDb','$tresc', '$autor');");
  10.  
  11. ?>

wszystko bylo by super, niestety nie zapisuje zmniennej $idDb, którą to zmienną uzyskuje za pomocą
  1. <?php
  2. $idDb = $_GET['idDb'];
  3. ?>

zmienna ta, jezeli uzyje funkcji echo do jej wyswietlenie - istnieje i wszystko dobrze sie wyswietla, natomiast jezeli podaje ją w poleceniu INSERT INTO . . . . tojuz nie odczytuje, a w bazie danych umieszcza 0 zamiast jakiesc innej liczby na ktora wskazuje $idDb
probowalem juz wielu rozwiazan, zna ktos moze rozwiazanie tego problemu??
dziekuje za pomoc,
pozdrawiam


--------------------
..:: wiNNing is NOT everything. . . aTTitude IS ::..

MAGma.photoGallery
Go to the top of the page
+Quote Post
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




wyswietl sobie to zapytanie (tuz przed wykonaniem) i sprawdz czy w zapytaniu masz te wartosc. Byc moze ty echowales $idDb w innym miejscu, a przy zapytaniu jest juz nie dostępna. Pozatym jesli ta kolumna jest liczbą, to powinna byc bez ciapkow:
  1. <?php
  2. echo "INSERT INTO komentarze VALUES (NULL,$idDb,'$tresc', '$autor')";
  3. ?>


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

"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
Jerem!asz
post
Post #3





Grupa: Zarejestrowani
Postów: 45
Pomógł: 2
Dołączył: 31.01.2007
Skąd: PL

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


ok, wiec wyswietlam zapytanie przed wywolaniem funkcji (ale przed funkcja if, w ktorej znajduje sie zapytanie) i pokazuje mi wszystko dobrze, tzn. INSERT INTO komentarze VALUES (NULL,5,'', '') koncowe wartosci sa puste, poniewaz formularz jest jeszcze nie wypalniony. Natomiast jak juz wypelnie formularz zdarzenie if powinno byc juz prawdziwe i nastepuje wywolanie funkcji, problem w tym, ze teraz ta zmienna nie ma zadnej wartosci, tzn. komunikat jest nastepujacy: INSERT INTO komentarze VALUES (NULL,,'tresc', 'autor')
jak sobie z tym poradzic?


oto kod jaki mam
  1. <?php
  2.  
  3. if (isset ($_GET ["idDb"])) $idDb=(int)$_GET ["idDb"];
  4.  
  5.  $tresc = $_POST['tresc'];
  6.  $autor = $_POST['autor'];
  7.  echo "INSERT INTO komentarze VALUES (NULL,$idDb,'$tresc', '$autor')";
  8.  
  9.  if (isset($_POST['tresc']))
  10. {
  11.  
  12.  $sql_tabela = "komentarze";
  13.  $tresc = $_POST['tresc'];
  14.  $autor = $_POST['autor'];
  15.  echo "INSERT INTO komentarze VALUES (NULL,$idDb,'$tresc', '$autor')";
  16.  mysql_query("INSERT INTO komentarze VALUES (NULL,$idDb,'$tresc', '$autor');");
  17.  }
  18.  ?>
  19. <form action="warsztaty2.php" method="POST">
  20.  <input type="hidden" name="pokaz" value="dodaj_news" />
  21. <table border="0">
  22.  <tr><td>Autor:</td><td><input size="30" type="text" name="autor" value="<?php echo $_POST['autor']; ?>" /></td></tr>
  23.  <tr><td>Tresć:</td><td><textarea cols="40" rows="5" name="tresc"><?php echo $_POST['tresc']; ?></textarea></td></tr>
  24.  <tr><td></td><td><input type="submit" value="Dodaj nowy news" /></td></tr>
  25. </table>
  26. </form>


nie wiem jak dojsc do prawidlowego rozwiazania, zabraklo mi juz pomyslow, dziekuje za wszelka pomoc
pozdrawiam.


--------------------
..:: wiNNing is NOT everything. . . aTTitude IS ::..

MAGma.photoGallery
Go to the top of the page
+Quote Post
DawidF
post
Post #4





Grupa: Zablokowani
Postów: 120
Pomógł: 2
Dołączył: 4.11.2004

Ostrzeżenie: (10%)
X----


Moim skromnym zdaniem...

Wywołujesz form'a za pomocą

  1. <form action="warsztaty2.php" method="POST">


A potem odwołujesz się do jakiejś zmiennej $_GET['idDB']...

Jeśli koniecznie chcesz się do niej odwołać, to chyba przydałoby się ją wcześnie zainicjować, np.

  1. <form action="warsztaty2.php?idDB=5" method="POST">
Go to the top of the page
+Quote Post
Jerem!asz
post
Post #5





Grupa: Zarejestrowani
Postów: 45
Pomógł: 2
Dołączył: 31.01.2007
Skąd: PL

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


dziala biggrin.gif

dzieki sliczne...

dozuslyszenia ( na pewno sie wkrotce odezwe z czyms :] hehe )

pozdrowionka :]

papapa


--------------------
..:: wiNNing is NOT everything. . . aTTitude IS ::..

MAGma.photoGallery
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 Aktualny czas: 21.08.2025 - 19:56