Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Problem z kodem
Forum PHP.pl > Forum > Przedszkole
kjiu
Witam,

mam maly problem z kodem..

  1. <?php
  2. require_once('user_manager.inc');
  3. require_once('errors.inc');
  4.  
  5.  
  6.  
  7. $uname = isset($_POST['username']) ? $_POST['username'] : '';
  8. $pw1 =  isset($_POST['password1']) ? $_POST['password1'] : '';
  9. $pw2 =  isset($_POST['password2']) ? $_POST['password2'] : '';
  10. $fname = isset($_POST['fullname']) ? $_POST['fullname'] : '';
  11. $email = isset($_POST['emailaddr']) ? $_POST['emailaddr'] : '';
  12. $year = isset($_POST['year']) ? intval($_POST['year']) : 0;
  13. $month = isset($_POST['month']) ? intval($_POST['month']) : 0;
  14. $day = isset($_POST['day']) ? intval($_POST['day']) : 0;
  15.  
  16.  
  17. if ($uname == '' or $fname == '' or $pw1 == '' or $pw2 == '')
  18. {
  19.  throw new InvalidInputException();
  20. }
  21.  
  22.  
  23. $usermgr = new UserManager();
  24. if (!$usermgr->isValidUserName($uname))
  25. {
  26.  throw new InvalidInputException();
  27. }
  28.  
  29.  
  30. if ($pw1 != $pw2)
  31. {
  32.  throw new InvalidInputException();
  33. }
  34.  
  35. if (!checkdate($month, $day, $year))
  36. {
  37.  throw new InvalidInputException();
  38. }
  39.  
  40. $usermgr = new UserManager();
  41. $usermgr->createAccount($uname, $pw1, $fname,
  42.                        $year, $month, $day);
  43.  
  44. header('Location: login.php');
  45.  
  46. ?>


a blad to:

Parse error: parse error in c:\usr\krasnal\www\przyklad\users\create_user.php on line 29
hondek
to moze chociaz wskaz ta 29 linie, przeciez nie bedziemy szukac po calym kodzie winksmiley.jpg
Spawnm
daj kod w tagi php , $usermgr = new UserManager(); czemu to jest 2 razy ?
możliwe że błąd jest w klasie...
kjiu
nie nie pomoglo

daje plik newuser_form:

  1. <?php session_start(); ?>
  2.  
  3. <html>
  4. <head>
  5.  <META CHARSET=CP1250>
  6.  <title>Formularz dla nowego użytkownika</title>
  7. </head>
  8. <body>
  9.  <p align='center'>
  10.    <b> Wpisz swoje dane: </b>
  11.  </p>
  12.  <form action='create_user.php' method='post'>
  13.    <table align='center' width='100%' border='0'>
  14.    <tr>
  15.      <td width='30%'>Nazwa użytkownika:</td>
  16.      <td>
  17.        <input type='text' size='30' name='username'/>
  18.      </td>
  19.    </tr>
  20.    <tr>
  21.      <td width='30%'>Hasło:</td>
  22.      <td>
  23.        <input type='password' size='30' name='password1'/>
  24.      </td>
  25.    </tr>
  26.    <tr>
  27.      <td width='30%'>Hasło (potwierdź):</td>
  28.      <td>
  29.        <input type='password' size='30' name='password2'/>
  30.      </td>
  31.    </tr>
  32.    <tr>
  33.      <td width='30%'>Imię i nazwisko:</td>
  34.      <td>
  35.        <input type='text' size='30' name='fullname'/>
  36.      </td>
  37.    </tr>
  38.    <tr>
  39.      <td width='30%'>Adres e-mail:</td>
  40.      <td>
  41.        <input type='text' size='30' name='emailaddr'/>
  42.      </td>
  43.    </tr>
  44.    <tr>
  45.      <td width='30%'>Data urodzenia:</td>
  46.      <td>
  47.        rok: <select name='year'>
  48.          <option value='--'> --
  49.          <option value='1999'>1999
  50.          <option value='1998'>1998
  51.          <option value='1997'>1997
  52.        </select>
  53.        miesiąc: <select name='month'>
  54.          <option value='--'> --
  55.          <option value='01'>01
  56.          <option value='02'>02
  57.          <option value='03'>03
  58.        </select>
  59.        dzień: <select name='day'>
  60.          <option value='--'> --
  61.          <option value='01'>01
  62.        </select>
  63.      </td>
  64.    </tr>
  65.    </table>
  66.    <p>
  67.      <input type='submit' value='Utwórz konto'/>
  68.    </p>
  69.  </form>
  70. </body>
  71. </html>


i plik create_user

  1. <?php
  2.  
  3. require_once('user_manager.inc');
  4. require_once('errors.inc');
  5.  
  6. //
  7. // 1. dla zachowania zwięzłości kodu pominiemy kilka
  8. //    elementów zabezpieczających sugerowanych w rozdziale 15
  9. //
  10.  
  11. //
  12. // 2. Na początek sprawdza poprawność wpisanych danych.
  13. //
  14. $uname = isset($_POST['username']) ? $_POST['username'] : '';
  15. $pw1 =  isset($_POST['password1']) ? $_POST['password1'] : '';
  16. $pw2 =  isset($_POST['password2']) ? $_POST['password2'] : '';
  17. $fname = isset($_POST['fullname']) ? $_POST['fullname'] : '';
  18. $email = isset($_POST['emailaddr']) ? $_POST['emailaddr'] : '';
  19. $year = isset($_POST['year']) ? intval($_POST['year']) : 0;
  20. $month = isset($_POST['month']) ? intval($_POST['month']) : 0;
  21. $day = isset($_POST['day']) ? intval($_POST['day']) : 0;
  22.  
  23. //
  24. // a. dane obowiązkowe
  25. //
  26. if ($uname == '' or $fname == '' or $pw1 == '' or $pw2 == '')
  27. {
  28.  throw new InvalidInputException();
  29. }
  30.  
  31. //
  32. // b. dane są poprawne.
  33. //
  34. $usermgr = new UserManager();
  35. if (!$usermgr->isValidUserName($uname))
  36. {
  37.  throw new InvalidInputException();
  38. }
  39.  
  40.  
  41. // czy hasło jest takie same?
  42. if ($pw1 != $pw2)
  43. {
  44.  throw new InvalidInputException();
  45. }
  46.  
  47. // czy data jest poprawna?
  48. if (!checkdate($month, $day, $year))
  49. {
  50.  throw new InvalidInputException();
  51. }
  52.  
  53. // data jest poprawna!
  54.  
  55. //
  56. // 3. Tworzy konto
  57. //
  58. $usermgr = new UserManager();
  59. $usermgr->createAccount($uname, $pw1, $fname,
  60.                        $year, $month, $day);
  61.  
  62. //
  63. // 4. Przekierowuje użytkownika na stronę logowania.
  64. //
  65. header('Location: login.php');
  66.  
  67. ?>



to sa przyklady z ksiazki php i mysql (marc wandschneider rodzial 20)
Spawnm
masz 2 razy session_start() i nie includujesz klasy UserManager
powiedz co jest w linii która wywala błąd
lnn
zgaduje ze brak jakiegos lub za duzo znaku konca ;p
wklejaj to co wyskakuje blad (przynajmniej 5 lini) a nie 100 smile.gif bo nikt nie bedzie analizowal calego
poza tym czytaj bledy smile.gif
kjiu
eh cos autor ksiazki zle napisal..

zrobilem tak jak pisze na stronie http://www.eioba.pl/a85841/rejestracja_i_logowania_php_mysql i mam taki blad:


Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at c:\usr\krasnal\www\przyklad\new\index.php:1) in c:\usr\krasnal\www\przyklad\new\index.php on line 3
Nie jestes zalogowany

index.php

  1. <?php
  2.  
  3.  
  4. if (isset($_SESSION['user_id']) and isset($_SESSION['login']))
  5.  
  6. {
  7.  
  8. echo "Jestes zalogowany. ";
  9.  
  10. echo "Twój login to: ";
  11.  
  12. echo $_SESSION['login'];
  13. }
  14. else
  15. {
  16. echo "Nie jestes zalogowany";
  17. }
  18. ?>


prosze o pomoc
Spawnm
wywal drugie session_start(),
session_start musi być przed html.
no i zobacz czy masz kodowanie utf-8 bez bom .
kjiu
  1. <?php
  2.  
  3. if (isset($_SESSION['user_id']) and isset($_SESSION['login']))
  4.  
  5. {
  6.  
  7. echo "Jestes zalogowany. ";
  8.  
  9. echo "Twój login to: ";
  10.  
  11. echo $_SESSION['login'];
  12.  
  13. }
  14.  
  15. else
  16.  
  17. {
  18.  
  19. echo "Nie jestes zalogowany";
  20.  
  21. }
  22. ?>


tak ?
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.