Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Prosty formularz i mały problem.
Szymon80
post
Post #1





Grupa: Zarejestrowani
Postów: 82
Pomógł: 1
Dołączył: 6.06.2009

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


Witam.

zrobiłem prosty skrypt formularza do zapisywania rekordu w bazie danych

  1. $zap = "update ".$prefix."template set wartosc='".$_POST[smstext]."' WHERE nazwa='smstext' ";
  2. $res = mysql_query($zap);
  3. echo '<form action="kody.php" method="post">
  4. <textarea name="smstext" cols="70" rows="11" >'.$tpl[smstext].'</textarea><br/>
  5. <input type="submit" value="Zapisz tekst" class=button>
  6. </form>';


Jednak coś jest nie tak. Skrypt zapisuje dane do bazy danych ale na moment.
Po zapisaniu formularz jest pusty (chociaż wstawiłem zmienną w textarea, która powinna pobierać wartość z bd), a po odświeżeniu strony lub ponownym wejściu na nią z innej strony, komórka w bd jest czyszczona.

Z pewnością ja robię jakiś błąd ale próbowałem już na wiele sposobów to naprawić,a le nie dało to żadnych rezultatów.
Czy ktoś mógłby doradzić mi jak skonstruować taki prosty formularz który by nie poprawnie zapisywał i wyświetlał zawartość z bd.
Go to the top of the page
+Quote Post
darko
post
Post #2





Grupa: Zarejestrowani
Postów: 2 885
Pomógł: 463
Dołączył: 3.10.2009
Skąd: Wrocław

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


$_POST[smstext] != $_POST["smstext"]
$tpl[smstext] != $tpl["smstext"]
ciekawostka: w linii 0 (zero) dodaj:
  1. define("smstext", "smstext");

i będzie działać dopóki nie zmienisz wartości atrybutu name dla textarea winksmiley.jpg

Ten post edytował darko 3.01.2010, 16:19:03


--------------------
Nie pomagam na pw, tylko forum.
Go to the top of the page
+Quote Post
Szymon80
post
Post #3





Grupa: Zarejestrowani
Postów: 82
Pomógł: 1
Dołączył: 6.06.2009

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


Dzięki, ale gdzie dokłądnie mam władować te zmienne ?

  1. $_POST[smstext] != $_POST["smstext"]
  2. $tpl[smstext] != $tpl["smstext"]
Go to the top of the page
+Quote Post
kusiu
post
Post #4





Grupa: Zarejestrowani
Postów: 163
Pomógł: 10
Dołączył: 24.01.2006

Ostrzeżenie: (30%)
XX---


Cytat(Szymon80 @ 3.01.2010, 04:35:54 ) *
Dzięki, ale gdzie dokłądnie mam władować te zmienne ?

  1. $_POST[smstext] != $_POST["smstext"]
  2. $tpl[smstext] != $tpl["smstext"]


He, kolega Ci tylko dał przykład tego, że $_POST[smstext] to nie jest to samo co $_POST["smstext"]. Po prostu używaj " w zmiennych.
Go to the top of the page
+Quote Post
emtiej
post
Post #5





Grupa: Zarejestrowani
Postów: 207
Pomógł: 18
Dołączył: 12.04.2009
Skąd: Rypin

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


  1. $zapytanie = "UPDATE $prefix.template
  2. SET wartosc='$_POST['smstext']'
  3. WHERE nazwa='smstext'";
  4.  
  5. $wynik = mysql_query($zapytanie);
  6. if($wynik)
  7. {
  8.  
  9. echo '<form action="kody.php" method="POST">
  10. <textarea name="smstext" cols="70" rows="11">';
  11. echo $tpl['smstext']; //nie wiem co to za zmienna, jeżeli to ma być zaktualizowany tekst z bazy, to do $tpl['smstext'] musisz wyciągnąć wartość z bazy mysql
  12. echo '</textarea><br />
  13. <input type="submit" value="Zapisz tekst" class="button">
  14. </form>';
  15.  
  16. }else{ // jeżeli zapytanie jest złe i MySQL zwraca jakiś błąd
  17. die("Złe zapytanie");
  18. }


Wcześniej zaraz po zapisaniu tekstu do bazy musisz wyciągnąć ten sam tekst i przypisać go to zmiennej $tpl['smstext'], aktualnie z tego kodu nic nie wynika, żeby $tpl['smstext'] miała jakąś wartość, jest ona zmienną niezadeklarowaną.
Go to the top of the page
+Quote Post
Szymon80
post
Post #6





Grupa: Zarejestrowani
Postów: 82
Pomógł: 1
Dołączył: 6.06.2009

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


Niestety nie podziałało.

Może podam cały kod skryptu w którym chciałem umieścić tą funkcję.

http://www.wklejto.pl/52363

Go to the top of the page
+Quote Post
lukaszgolder
post
Post #7





Grupa: Zarejestrowani
Postów: 141
Pomógł: 17
Dołączył: 2.04.2008
Skąd: z Zabrza

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


Nie widzę nigdzie w tym kodzie przypisania zmiennej: $tpl[smstext]. No a nawet jak jest gdzieś wcześniej, to najpierw pobierasz jej wartość, a potem ją aktualizujesz w bazie?
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 - 09:54