Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]Brak połączenia między formularzem (html) a skrytpem w php
Forum PHP.pl > Forum > Przedszkole
OBQ
witam serdecznie,
mam następujący formularz zrobiony na localhoscie (posiadam apache server 2.2, php 5.0, mysql server 5.0):

// kod formularza składa się z 3 pól: imię, nazwisko, adres e-email; po uzupełnieniu pół dane powinny się dodać do bazy.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Zrób ze mnie Elvisa - Dodawanie adresów</title>
<link rel="stylesheet" type="text/css" href="style.css" />
</head>
<body>
<img src="blankface.jpg" width="161" height="350" alt="" style="float:right" />
<img name="elvislogo" src="elvislogo.gif" width="229" height="32" border="0" alt="Zrób ze mnie Elvisa" />
<p>Wpisz imię, nazwisko i adres e-mail, aby dołączyć do listy mailingowej
<strong>Zrób ze mnie Elvisa</strong>.</p>
<form method="post" action="addemail.php">
<label for="firstname">Imię:</label>
<input type="text" id="firstname" name="firstname" /><br />
<label for="lastname">Nazwisko:</label>
<input type="text" id="lastname" name="lastname" /><br />
<label for="email">Adres e-mail:</label>
<input type="text" id="email" name="email" /><br />
<input type="submit" name="Submit" value="Wyślij" />
</form>
</body>
</html>

// po wciśnięciu przycisku wyślij, zamiast jakiegokolwiek komunikatu pojawia się na stronie czysty kod skryptu:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Zrob ze mnie Elvisa - Dodawanie adresow</title>
<link rel="stylesheet" type="text/css" href="style.css" />
</head>
<body>

<?php
$dbc = mysqli_connect('localhost', '' , 'haslo, 'nazwa bazy')


// localhost jest, nazwy uzytk nie ma, haslo tez jest, nazwa bazy tez jest


or die('Brak polaczenia z serwerem MySQL.');

$first_name = $_POST['firstname'];
$last_name = $_POST['lastname'];
$email = $_POST['email'];

$query = "INSERT INTO email_list (first_name, last_name, email) VALUES ('$first_name', '$last_name', '$email')";
mysqli_query($dbc, $query)
or die('Blad w zapytaniu do bazy danych.');

echo 'Dodano dane klienta.';

mysqli_close($dbc);
?>

</body>
</html>

jak myślicie co to może być questionmark.gif z góry dzięki za pomoc
!*!
Wstaw kod w odpowiednie formatowanie, inaczej ciężko się połapać. I sprawdzasz to w tym samym pliku? Wtedy pozostaw action w formularzu puste.
OBQ
jeszcze jedna uwaga: dlaczego na IE wyskakuje ten kod a na Mozilli nic totalnie nie wyskakuje ??

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  2. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  5. <title>Zrób ze mnie Elvisa - Dodawanie adresów</title>
  6. <link rel="stylesheet" type="text/css" href="style.css" />
  7. </head>
  8. <img src="blankface.jpg" width="161" height="350" alt="" style="float:right" />
  9. <img name="elvislogo" src="elvislogo.gif" width="229" height="32" border="0" alt="Zrób ze mnie Elvisa" />
  10. <p>Wpisz imię, nazwisko i adres e-mail, aby dołączyć do listy mailingowej
  11. <strong>Zrób ze mnie Elvisa</strong>.</p>
  12. <form method="post" action="addemail.php">
  13. <label for="firstname">Imię:</label>
  14. <input type="text" id="firstname" name="firstname" /><br />
  15. <label for="lastname">Nazwisko:</label>
  16. <input type="text" id="lastname" name="lastname" /><br />
  17. <label for="email">Adres e-mail:</label>
  18. <input type="text" id="email" name="email" /><br />
  19. <input type="submit" name="Submit" value="Wyślij" />
  20. </form>
  21. </body>
  22. </html>




  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  2. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  4. <head>
  5. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  6. <title>Zrob ze mnie Elvisa - Dodawanie adresow</title>
  7. <link rel="stylesheet" type="text/css" href="style.css" />
  8. </head>
  9. <body>
  10.  
  11. <?php
  12. $dbc = mysqli_connect('localhost', '' , 'haslo, 'nazwa bazy')
  13. or die('Brak polaczenia z serwerem MySQL.');
  14.  
  15. $first_name = $_POST['firstname'];
  16. $last_name = $_POST['lastname'];
  17. $email = $_POST['email'];
  18.  
  19. $query = "INSERT INTO email_list (first_name, last_name, email) VALUES ('$first_name', '$last_name', '$email')";
  20. mysqli_query($dbc, $query)
  21. or die('Blad w zapytaniu do bazy danych.');
  22.  
  23. echo 'Dodano dane klienta.';
  24.  
  25. mysqli_close($dbc);
  26. ?>
  27.  
  28. </body>
  29. </html>
  30.  
  31.  
mac_fly
A masz w php.ini włączony moduł mysqli? Włączenie to : extension=php_mysqli.dll; Możesz też dla próby zmienić wszystkie mysqli na zwykłe mysql_connect itp.. Jeszcze jedna sprawa: jak przesyłasz dane w formularzu to na tą samą podstronę, czy jakąś inną, bo jeżeli na tę samą to action="". winksmiley.jpg
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.