Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MYSQL] formularz, wysyłanie danych
Forum PHP.pl > Forum > Przedszkole
em-ba
Witam, mam formularz, w którym są różne pola input, select, textarea. Dane z formularza wysyłam do bazy danych. Problem tkwi w tym, że dane z pól input i select są normalnie dodawane do bazy, a ostatnie pole textarea o nazwie uwagi nie są dodawane.. Co robię źlę?? Wpisuje do pola uwagi jakieś byle co i sie nie wiem czy nie wysyła czy nie zapisuje... wiem tylko ze nie ma w bazie smile.gif podczas gdy inne dane są normalnie dodawane

oto kod:
  1. <form action="zagad.php" method="POST">
  2. <fieldset>
  3. <div>
  4. <div>
  5. <label for="cos">cos:</label>
  6. <input id="cos" name="cos" class="text" type="text" maxlength="30" value="<?=$cos;?>" />
  7. </div>
  8. <div>
  9. <label for="uwagi">uwagi:</label>
  10. <textarea id="uwagi" name="text" class="text" cols="15" rows="5" onkeydown="zliczanie(this.form.text,this.form.iloscZnakow,75);" onkeyup="zliczanie(this.form.text,this.form.iloscZnakow,75);" value="<?=$uwagi;?>" /></textarea>
  11. </div>
  12. </div>
  13.  </fieldset>
  14. </form>
  15.  
  16.  
  17. <?php
  18. $pol = @mysql_connect ('localhost', 'root', 'krasnal') or die ("nie udało sie połączyć");
  19. mysql_select_db('xter') or die ("Nie mozna zlokalizowac bazy danych");
  20.  
  21. $qr = "INSERT INTO `zagad`(`cos`,`uwagi` )
  22.  VALUES('".$cos."', '')";
  23. $wyk = mysql_query ($qr) or die(mysql_error());
Krakier
Kod
<textarea id="uwagi" name="text" class="text" cols="15" rows="5" onkeydown="zliczanie(this.form.text,this.form.iloscZnakow,75);" onkeyup="zliczanie(this.form.text,this.form.iloscZnakow,75);" value="<?=$uwagi;?>" /></textarea>

W tej linijce jest błąd, nadałeś temu polu name="text", a nie jak sądzisz name="uwagi". Spróbuj zmienić tamtą linijkę na taką:
Kod
<textarea id="uwagi" name="uwagi" class="text" cols="15" rows="5" onkeydown="zliczanie(this.form.text,this.form.iloscZnakow,75);" onkeyup="zliczanie(this.form.text,this.form.iloscZnakow,75);" value="<?=$uwagi;?>" /></textarea>


I w zagad.php:
Zamiast:
  1. <?php
  2. $qr = "INSERT INTO `zagad`(`cos`,`uwagi` )
  3.  VALUES('".$cos."', '')";
  4. ?>

Wstaw:
  1. <?php
  2. $qr = "INSERT INTO `zagad`(`cos`,`uwagi` )
  3.  VALUES('".$cos."', '".$_POST['uwagi']."')";
  4. ?>
kaem
W zapytaniu do kolumny uwagi wysyłasz pusty ciąg znaków.
EDIT:
a tak poza tym, to jest kompletny kod? Bo widzę tu kilka braków, np. nie ma przycisku submit,
nie zczytujesz wartości pól z formy ze zmiennej $_POST. Ale ja się dopiero uczę więc może coś mi się myli w głowie tongue.gif
em-ba
ok, już działa - dzięki

a mam jeszcze takie pytanko apropo tematu... czy te dane, które są zapisywane w bazie z pola uwagi to normlaka ze zapisuje się jedno słowo pod drugim, a nie tak jak jest to widoczne w formularzu?

nie wiem czy to normalne, ze teraz to wyglada mniej wiecej tak:
Kod
         cos | uwagi
         __________
         1   |  jakas
             |   przykladowa
             |    uwaga
         2   |  
         3   |   jakas
             |  uwaga
         4   |
kaem
Wyświetl na stronie jakiś tekst z tej tabeli. Jeśli będzie wszystko ok to chyba nie ma problemu. Jeśli nie to coś pokombinujemy rolleyes.gif
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.