Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]sprawdźcie czego tu brak
Forum PHP.pl > Forum > Przedszkole
zew2
Witam
Jestem początkującym w php i chciałbym aby ktoś mi sprawdził czego mi tu brakuje
mam taki prosty formularz z textarea no i oczywiście dwa problemy z tym, po pierwsze co zrobić aby po wejściu na stronkę nie pojawiał mi się od razu tekst nie wypełniłeś formularza, a po drugie dlaczego po wysłaniu formularza wszystko się elegancko zapisuje w bazie danych i wysyła a gdy odświeżę strone to w bazie danych znowu zapisuje się ten sam rekord pomimo że pole formularza jest już puste i nie wciskam akceptuj
Z góry dziękuje za waszą wyrozumiałość i pomoc
  1. <?php
  2.  
  3. $poloczenie = mysql_connect('localhost', 'root')
  4. or die("brak połączenia:" . mysql_error());
  5. $baza = mysql_select_db('forum',$poloczenie)
  6. or exit("nie wybrano bazy. Bład:" .mysql_error())
  7. ?>
  8. <?php
  9. if ($_POST['akceptuj']){
  10.  $kome = trim($_POST['porad']);
  11.    $kome = str_replace(",", ".", $kome);
  12.    $kome = htmlspecialchars($kome);
  13.    }
  14.    
  15. if (!empty($kome)){
  16.    
  17.    $zapytanie= "INSERT INTO `forum`.`porady` (`id`, `poradz`, `odp`, `data`) VALUES (NULL, '$kome', '', CURDATE())";;
  18.     $wynik = mysql_query($zapytanie) or die ('Nie dodano zapytania, błąd:' .
  19.    mysql_error());
  20.    
  21.  
  22.    }
  23.    else
  24.    echo "<p /> Nie wpisane zapytanie";
  25.  
  26.  
  27. ?>


a oto i formularz

  1. <form action="" method="post" enctype="application/x-www-form-urlencoded" name="komantarz">
  2. <textarea cols="60" rows="10" name="porad" class="maxlength max_2000" id="maxLength"></textarea>
  3. </p>
  4. <table width="200" border="0">
  5. <tr>
  6. <td width="77"><label>
  7. <input type="submit" name="akceptuj" id="akceptuj" value="AKCEPTUJ">
  8. </label></td>
  9. <td width="113"><label>
  10. <input type="reset" name="WYCZYŚĆ TEKST" id="WYCZYŚĆ TEKST" value="WYCZYŚĆ TEKST">
  11. </label></td>
  12. </tr>
  13. </table></form>
RafaelX
dodaj mozeprzed wszystkim
  1. <?php
  2. if(isset($_POST['porad'])){
  3.  
  4. tu skrypt
  5.  
  6.  
  7. }
  8. ?>
zew2
Dzięki działa ale dalej dodaje rekord do bazy jak dam odśwież strone jak temu zapobiedz
RafaelX
w bazie daj na `poradz` index unique to w tedy nie nadpisze, dodatkowo daj @ przed mysql_query w tedy nie wywali błedu
dodatkowo zapobiegnie to powielaniem tych samych pytan...

albo po prostu po wykonaniu skryptu daj
  1. <?php
  2. header("Location: >link<")
  3. ?>
zew2
Dzięki wszystko już hula jak należy chłopie jesteś wielki
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.