Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php]zwraca blad
Forum PHP.pl > Forum > Przedszkole
Gość_Maciek
Witam. Jestem poczatkujacym programista i mam problem ze skryptem. Mianowicie jest to rejestracja (php + baza mysql). Oto skrypt :

  1. <?php # Skrypt 6.6 - rejestracja.php
  2. $page_title = 'Zarejestruj sie!';
  3. if (isset($_POST['submit'])) {
  4. //obsluz formularz.
  5. $message = NULL;
  6. //Utworz nowa pusta zmienna.
  7.  
  8. if (empty($_POST['first_name'])) {
  9. $fn = FALSE;
  10. $message .= '<p>Zapomniales podac swoje imie !</p>';
  11. } else {
  12. $fn = $_POST['first_name'];
  13. }
  14. if (empty($_POST['last_name'])) {
  15. $ln = FALSE;
  16. $message .= '<p>Zapomniales podac swoje nazwisko !</p>';
  17. } else {
  18. $ln = $_POST['last_name'];
  19. }
  20. if (empty($_POST['email'])) {
  21. $e = FALSE;
  22. $message .= '<p>Zapomniales podac adres email !</p>';
  23. } else {
  24. $e = $_POST['email'];
  25. }
  26. if (empty($_POST['username'])) {
  27. $u = FALSE;
  28. $message .= '<p>Zapomniales podac nazwe uzytkownika!</p>';
  29. } else {
  30. $u = $_POST['username'];
  31. }
  32. if (empty($_POST['password1'])) {
  33. $p = FALSE;
  34. $message .= '<p>Zapomniales podac haslo!</p>';
  35. } else {
  36. if ($_POST['password1'] == $_POST['password2']) {
  37. $p = $_POST['password1'];
  38. } else {
  39. $p = FALSE;
  40. $message .= '<p>Za drugim razem wpisales inne haslo!</p>';
  41. }
  42. }
  43. if ($fn && $ln && $e && $u && $p) { // Jezli wszystko jest OK.
  44. require_once('../mysql_connect.php'); //polaczenie udalo sie.
  45. $query = "INSTER INTO users (username, first_name, last_name, email, password, registration_date) VALUES ('$u', '$fn', '$ln', '$e', PASSWORD('$p'), NOW() )";
  46. $result = @mysql_query ($query);
  47. if ($result) {
  48. echo '<p><b>Zostales zarejestrwowany !</b</p>';
  49. include ('szablony/stopka.inc'); //dolacz stopke html
  50. exit();
  51. } else {
  52. $message = '<p>Nie zostales zarejestrowany z powodu awarii naszego systemu. Przepraszamy za 
    klopot - Team.</p><p>'
     . mysql_error() . '</p>';
  53. }
  54. } else {
  55. $message .= '<p> Sprobuj jeszcze raz</p>';
  56. }
  57. if (isset($message)) {
  58. echo '<font color="red">', $message, '</font>';
  59. }
  60. ?>
  61. <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
  62. <fieldset><legend>Wprowadz do ponizszego formularza informacje na swoj temat:</legend>
  63. <p><b>Imie:</b><input type="text" name="first_name" size="15" maxlenght="15" value="<?php if
  64. (isset($_POST['first_name'])) echo $_POST['first_name']; ?>" /></p>
  65. <p><b>Nazwisko:</b> <input type="text" name="last_name" size="20" maxlenght="40" value="<?php
  66. if (isset($_POST['last_name'])) echo $_POST['last_name']; ?>" /></p>
  67. <p><b>Adres email:</b> <input type="text" name="email" size="40" maxlenght="60" value="<?php
  68. if (isset($_POST['email']))
  69. echo $_POST['email']; ?>" /></p>
  70. <p><b>Nazwa uzytkownika :</b> <input type="text" name="username" size="20" maxlenght="40" value="<?php
  71. if (isset($_POST['username']))
  72. echo $_POST['username']; ?>" /></p>
  73. <p><b>Haslo :</b> <input type="password" name="password1" size="20" maxlenght="40" /></p>
  74. </fieldset>
  75. <div align="center"><input type="submit" name="submit" value="Wyslij dane" /></div>
  76. </form>


Chodzi o to, ze nie wiem co zrobilem zle (pewnie jakis szczegol...), bo po wpisaniu adresu do skryptu w przegladarce zwraca mi blad :

Cytat
Parse error: parse error, unexpected $ in /home/orange12/domains/xxx/public_html/xxx/html/rejestracja.php on line 78


Troche mnie to dziwi, tym bardziej, ze zwraca blad z 78 lini, a tam przeciez nic nie ma :|. Dziekuje za jakiekolwiek wskazowki.

Pozdrawiam.
Master Miko
proponuję CI przy takich skryptach pisać komentarze gdzie każdy znak } się kończy... w ten sposób może sam znajdziesz błąd, lub ułatwisz jego znalezienie.


wykasuj tymczasowo forumlarz, puść skrypt i wtedy zobaczysz w której cześci jest problem. Potem... niesety musisz wnikliwie przejechać kod.
Gość_Maciek
Cytat(Master Miko @ 2006-05-05 15:43:35)
proponuję CI przy takich skryptach pisać komentarze gdzie każdy znak } się kończy... w ten sposób może sam znajdziesz błąd, lub ułatwisz jego znalezienie.

Jasne. Dzieki za rade na pewno skorzystam. A odnosnie bledu mozesz mi cos napisac ? Tak jak wspomnialem. Dziwi mnie to tym bardziej, ze zwraca blad z 78 lini :|. Sprawdzalem kilka razy gdzie moze byc problem, ale do dzis dzien nie wiem winksmiley.jpg. Jest to zapewne szczegol, ktory przeoczylem.

Pozdrawiam.
Master Miko
To chyba przykład z jakiejś książki snitch.gif questionmark.gif

Błąd jest linia 60. Zamiast kropkek, dałeś przecinki
Gość_Maciek
Po usunieciu formularza :

  1. <?php # Skrypt 6.6 - rejestracja.php
  2. $page_title = 'Zarejestruj sie!';
  3. if (isset($_POST['submit'])) {
  4. //obsluz formularz.
  5. $message = NULL;
  6. //Utworz nowa pusta zmienna.
  7.  
  8. if (empty($_POST['first_name'])) {
  9. $fn = FALSE;
  10. $message .= '<p>Zapomniales podac swoje imie !</p>';
  11. } else {
  12. $fn = $_POST['first_name'];
  13. }
  14. if (empty($_POST['last_name'])) {
  15. $ln = FALSE;
  16. $message .= '<p>Zapomniales podac swoje nazwisko !</p>';
  17. } else {
  18. $ln = $_POST['last_name'];
  19. }
  20. if (empty($_POST['email'])) {
  21. $e = FALSE;
  22. $message .= '<p>Zapomniales podac adres email !</p>';
  23. } else {
  24. $e = $_POST['email'];
  25. }
  26. if (empty($_POST['username'])) {
  27. $u = FALSE;
  28. $message .= '<p>Zapomniales podac nazwe uzytkownika!</p>';
  29. } else {
  30. $u = $_POST['username'];
  31. }
  32. if (empty($_POST['password1'])) {
  33. $p = FALSE;
  34. $message .= '<p>Zapomniales podac haslo!</p>';
  35. } else {
  36. if ($_POST['password1'] == $_POST['password2']) {
  37. $p = $_POST['password1'];
  38. } else {
  39. $p = FALSE;
  40. $message .= '<p>Za drugim razem wpisales inne haslo!</p>';
  41. }
  42. }
  43. if ($fn && $ln && $e && $u && $p) { // Jezli wszystko jest OK.
  44. require_once('../mysql_connect.php'); //polaczenie udalo sie.
  45. $query = "INSTER INTO users (username, first_name, last_name, email, password, registration_date) VALUES ('$u', '$fn', '$ln', '$e', PASSWORD('$p'), NOW() )";
  46. $result = @mysql_query ($query);
  47. if ($result) {
  48. echo '<p><b>Zostales zarejestrwowany !</b</p>';
  49. include ('szablony/stopka.inc'); //dolacz stopke html
  50. exit();
  51. } else {
  52. $message = '<p>Nie zostales zarejestrowany z powodu awarii naszego systemu. Przepraszamy za 
    klopot - Team.</p><p>'
     . mysql_error() . '</p>';
  53. }
  54. } else {
  55. $message .= '<p> Sprobuj jeszcze raz</p>';
  56. }
  57. if (isset($message)) {
  58. echo '<font color="red">', $message, '</font>';
  59. }
  60. ?>


Zwraca mi blad z 62 lini, w ktorej rowniez nic nie ma :roll2:

Cytat
Parse error: parse error, unexpected $ in /home/orange12/domains/xxx/public_html/xxx/html/rejestracja.php on line 62


P.s Jesli napisalem post pod postem to przepraszam najmocniej, ale nie mam praw edycji.

Pozdrawiam i czekam na komentarze.
Guest
Jak mniemam mowisz o tym :

  1. <?php
  2. echo '<font color="red">'. $message. '</font>';
  3. ?>


Mimo zmiany dalej zwraca blad z 62 lini (formularz usuniety) :

Cytat
Parse error: parse error, unexpected $ in /home/orange12/domains/xxx/public_html/xxx/html/rejestracja.php on line 62


P.s Skrypt jest z ksiazki - Kurs php i mysql.

Pozdrawiam.
Michasko
Nie wiem, gdzie jest błąd o którym mowa, ale przy przeglądaniu skryptu znalazłem literówke smile.gif

  1. <?php
  2. $query = "INSTER INTO users (username, first_name, last_name, email, password, registration_date) VALUES ('$u', '$fn', '$ln', '$e', PASSWORD('$p'), NOW() )";
  3. ?>


jeszcze poszukam tamtego błędu smile.gif
Master Miko
1. Sugeruję Ci wejść na strone (pewnie wydawinctwo helion) gdzie umieszczone są gotowe skrypty. Tam napewno będziesz mieć dobrą wersję.

2. Przepisywanie skryptów z książki na komputer jest trochę bezsensu... przykłady raczej pokazują Ci jak to działa (w praktyce w ogóle się nie sprawdzają tongue.gif )

3. Poszukaj błędu razem z książką...

4. Sprawdzaj literówki.. użyj do tego jakiegoś edytora php. Powinien Ci o wiele pomóc przy pisaniu (pewnie pisałeś to w notatniku snitch.gif )

5. A to że mówi Ci że jest błąd na "ostatniej linii" mówi o tym że jest coś nie tak z syntaxem (składnia) - może to być źle wstawiony $, ' , " } , { - jednym słowem wszystko... :/
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.