Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Dane z formularza nie wpisują sie do tabeli
Forum PHP.pl > Forum > Bazy danych
martin1978
Witam
Proszę spojrzeć na te dwa pliki:

Plik wpisz.html
  1. <table border="0" cellspacing="10" cellpadding="2" style="float: left">
  2. <caption style="text-align: center" style="font-family: monospace"> Formularz danych </caption>
  3. <form action="dane/wpisz.php" method="POST" enctype="text/plain">
  4. <div>
  5. <tr>
  6. <th style="width: 50px" align="left" style="font-family: monospace"> Nick: </th>
  7. <td style="width: 150px"> <input type="text" name="nick" maxlength="78"> </td>
  8. </tr>
  9.  
  10. <tr>
  11. <th style="width: 50px" align="left" style="font-family: monospace"> Hasło: </th>
  12. <td style="width: 150px"> <input type="password" name="haslo" maxlength="78"> </td>
  13. </tr>
  14.  
  15. <tr>
  16. <td style="width: 150px"> <input type="submit" name="wyslij" value="Wyslij"> </td>
  17. </tr>
  18. </div>
  19. </form>
  20. </table>



Plik wpisz.php
  1. <?php
  2. // informacje na temat bazy
  3. $host = 'localhost';
  4. $user = 'user';
  5. $password = 'haslo';
  6. $dbName = 'NazwaBazdyDanych';
  7.  
  8. // polaczenie i wybór bazy danych
  9. $polacz = mysql_connect($host, $user, $password) OR die(mysql_error());
  10. $db = mysql_select_db($dbName, $polacz) OR die(mysql_error());
  11.  
  12. // wprowadzanie do bazy nowego wpisu po wciśnięciu przycisku submit
  13. IF (isset($_POST['wyslij']) && trim($_POST['wyslij']) != " ") {
  14. $nick = $_POST['nick'];
  15. $sql = "INSERT INTO Zgloszenie (nick) VALUES ('$nick')";
  16. $rezultat = mysql_query($sql, $polacz) OR die(mysql_error());
  17. }
  18.  
  19. IF (isset($_POST['wyslij']) && trim($_POST['wyslij']) != " ") {
  20. $haslo = $_POST['haslo'];
  21. $sql = "INSERT INTO Zgloszenie (haslo) VALUES ('$haslo')";
  22. $rezultat = mysql_query($sql, $polacz) OR die(mysql_error());
  23. }
  24. ?>

Gdzie robię błąd, że po wysłaniu danych z formularza dane nie sa zapisywane w tabeli?
Z góry dziękuję za odpowiedzi
Pozdrawiam
darko
Na poczatku pliku wpisz.php dodaj error_reporting(E_ALL);
Wyskoczyłbym też z zapytania:
  1. $sql = "INSERT INTO Zgloszenie (nick) VALUES ( '" . $nick . "')";

W formularzu znaczniki input należy zamykać. Usunąłbym też zbędne w tym przypadku ustawienie enctype. Na końcu dla pewności zrób sobie
  1. var_dump($_POST['nick']); oraz var_dump($_POST['haslo']);

/ edit
i najważniejsza sprawa upewnij się czy możesz zostawiać puste wartości dla insertów do bazy, tzn. czy w strukturze tabeli zarówno login jak i hasło NIE jest NOT NULL
martin1978
Pomogło smile.gif. Dzięki
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.