Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] button linkiem
Forum PHP.pl > Forum > Przedszkole
robert-0627
Witam . mam strone 2 div . Jedne div z menu i jeden głowny . Kieyd klikne na linka z div gdzie sa linki to zawartosc linka pokazuje i sie w div głownym kod wygląda tak np.
  1. <a href="index.php?go=1"><center><b>AKTUALNOŚCI</b></center></a>
  2.  
  3.  
  4. <?
  5. switch ($_GET['go'])
  6. {
  7.  
  8. case 1:
  9.  default:
  10. include("stronaglowna.php");
  11. break;
  12. }
  13. ?>


No i chodzi o to , że zrobiłem sobie rejestracja . Klikam rejestracja w linkach i wszystko ładnie ten ipnuty wszystkie pokazuja mi się w div tym głownym gdize sie pokazuje zawartość . Jednak po wypełnieniu danych mam guzik

  1. <form name = "formularz1"
  2. action = "rejestracja/new_user.php"
  3. method = "POST"
  4. >
  5.  
  6. <table border="0" align="center"><tr>
  7.  
  8. <td>Nazwa użytkownika:</td>
  9. <td>
  10. <input type="text" name="nazwa">
  11. </td>
  12. </tr><tr>
  13.  
  14. <td>Hasło:</td>
  15. <td>
  16. <input type="password" name="haslo">
  17. </td>
  18. </tr><tr>
  19.  
  20. <td>Powtórz hasło:</td>
  21. <td>
  22. <input type="password" name="haslo2">
  23. </td>
  24. </tr><tr>
  25.  
  26. <td>Imię:</td>
  27. <td>
  28. <input type="text" name="imie">
  29. </td>
  30. </tr><tr>
  31.  
  32. <td>Nazwisko:</td>
  33. <td>
  34. <input type="text" name="nazwisko">
  35. </td>
  36. </tr><tr>
  37.  
  38. <td>E-mail:</td>
  39. <td>
  40. <input type="text" name="email">
  41. </td>
  42. </tr><tr>
  43.  
  44. <td colspan="2" align="right">
  45. <input type="button" value="Rejestracja" >
  46. </td>
  47. </tr></table>
  48. </form>


Chodzi o to aby ten ostatni button value= rejestracja dziła na tej samej zasadzi co powyżej . Kiedy rejestracja przebiegła dobrze wyskakuje w nowym oknie Rejestracja udana i możesz się zalogować . A ja chcę aby to wyskakiwało w tym div.

Pozdrawiam i czekam na odpowiedz . Robert
marcio
W czym problem dajesz if;a i gdy dobrze zarejestrowalo wyswietlasz tekst etc
robert-0627
Mógł byś troche jaśniej .?:)Jestem początkuącym jakiego 'if;a' ? Chce aby kiedy klikne rejestracja to to new user .php które pokaże mi czy rejestracja udana czy nie wyświetlałao sie w srodkowym div .
marcio
Musialbym widziec cala strukture tych div'ow etc bo nie wiem zabardzo jak pomoc tym bardziej ze mi z html tez troche sie miesza
robert-0627
  1. <?php
  2. <DIV id="lewa" align="center">
  3. <table cellpadding="1" width="100%" id="AutoNumber1" bordercolorlight="#FFFFFF" bordercolordark="#000000" bordercolor="#FF0000">
  4. <center>
  5. <tr>
  6.  <td class="menu" bgcolor="#008000" td style="border: 2mm ridge green";>
  7.  <center><b>MENU</b></center></a></td>
  8. </tr>
  9. <tr>
  10.  <td class="menu"td style="border: 2mm ridge green" >
  11.  
  12. <a href="index.php?go=1"><center><b>AKTUALNOŚCI</b></center></a></td>
  13.  
  14. </td>
  15.  
  16.  
  17.  
  18. </table>
  19. </center>
  20.  
  21.  
  22. <form action="index.php" method="POST">
  23. <table>
  24. <tr>
  25. <td><b><center>LOGIN </b></center>
  26. <br>
  27. <input type="text" name="LOGIN" >
  28. </td>
  29. </tr>
  30. <tr>
  31. <td><b><center>HASŁO</b></center> <br>
  32. <input type="password" name="password" >
  33. <br>
  34. <center>
  35. <input type="submit" value="Wyślij">
  36.  
  37. <h6><center>
  38. <a href="index.php?go=7">Rejestracja</center></a><h6>
  39. </center>
  40. </td></tr>
  41.  
  42.  
  43. </table>
  44. </form>
  45.  
  46.  
  47.  
  48.  
  49.  
  50.  
  51. </DIV>
  52. ?>


  1. <DIV id="srodek">
  2.  
  3. <?
  4. switch ($_GET['go'])
  5. {
  6.  
  7.  
  8.  case 1:
  9.  default:
  10. include("stronaglowna.php");
  11. break;
  12. }
  13. ?>
marcio
NIe wiem jak to wytluamczyc mam tak zrobione w cms ale wiesz....Poprostu zanim zamkniesz div'a to spradzaj czy zerejstrowano i pokaz wiadomosc nie wiem jak ci to powiedziec a tym bardziej ze nie wiem jaki efekt uzyzkujesz
robert-0627
No to jedziem :
plik new user.php

  1. <?php
  2.  
  3. define("OK", 0);
  4. define("SERVER_ERROR", 1);
  5. define("BAD_USER_NAME_LENGTH", 2);
  6. define("BAD_USER_PASS_LENGTH", 3);
  7. define("USER_NAME_ALREADY_EXISTS", 4);
  8. define("EMPTY_FIELDS", 5);
  9.  
  10. function rejestruj($nazwa, $haslo, $imie, $nazwisko, $email)
  11. {
  12. //sprawdzenie poprawności danych
  13.  
  14. $userNameLength = strlen($nazwa);
  15. $userPassLength = strlen($haslo);
  16.  
  17. if($userNameLength < 3 || $userNameLength > 20)
  18. return BAD_USER_NAME_LENGTH;
  19.  
  20. if($userPassLength < 6 || $userPassLength > 40)
  21. return BAD_USER_PASS_LENGTH;
  22.  
  23. if($imie == "" || $nazwisko == "" || $email == "")
  24. return EMPTY_FIELDS;
  25.  
  26. //połączenie z bazą danych
  27.  
  28. if (!$db_lnk = mysql_connect("localhost", "php", "x")){
  29. //echo('Wystąpił błąd podczas próby połączenia z serwerem MySQL...');
  30. return SERVER_ERROR;
  31. }
  32.  
  33. if(!mysql_select_db('test')){
  34. //echo('Wystąpił błąd podczas wyboru bazy danych: test...');
  35. return SERVER_ERROR;
  36. }
  37.  
  38. //sprawdzenie, czy użytkownik o podanej nazwie istnieje w bazie
  39.  
  40. $query = "SELECT COUNT(*) FROM Users WHERE Nazwa='$nazwa' ";
  41.  
  42. if(!$result = mysql_query($query, $db_lnk)){
  43. //echo('Wystąpił błąd: Instrukcja SELECT...');
  44. return SERVER_ERROR;
  45. }
  46.  
  47. if(!$row = mysql_fetch_row($result)){
  48. //echo('Wystąpił błąd: nieprawidłowe wyniki zapytania...');
  49. return SERVER_ERROR;
  50. }
  51. else{
  52. if($row[0] > 0){
  53. return USER_NAME_ALREADY_EXISTS;
  54. }
  55. }
  56.  
  57. //dodanie nowego użytkownika
  58.  
  59. $query = "INSERT INTO Users VALUES(";
  60. $query .= "NULL, '$nazwa', '$haslo', '$imie', '$nazwisko', '$email')";
  61.  
  62. if(!$result = mysql_query($query, $db_lnk)){
  63. //echo('Wystąpił błąd: instrukcja INSERT...');
  64. return SERVER_ERROR;
  65. }
  66.  
  67. $count = @mysql_affected_rows();
  68.  
  69. if($count <> 1){
  70. return SERVER_ERROR;
  71. }
  72. else{
  73. return OK;
  74. }
  75. }
  76.  
  77. if(isSet($_SESSION['zalogowany'])){
  78. header("Location: main.php");
  79. }
  80. else if(!isSet($_POST["nazwa"]) || !isSet($_POST["haslo"]) ||
  81. !isSet($_POST["imie"]) || !isSet($_POST["nazwisko"]) ||
  82. !isSet($_POST["email"])){
  83. include "new_user.html";
  84. }
  85. else{
  86.  
  87. ?>
  88.  
  89. <html>
  90. <head>
  91. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2">
  92. <title>Rejestracja</title>
  93. </head>
  94. <body>
  95. <h2 align="center">
  96.  
  97. <?php
  98.  
  99. $nazwa = $_POST["nazwa"];
  100. $haslo = $_POST["haslo"];
  101. $imie = $_POST["imie"];
  102. $nazwisko = $_POST["nazwisko"];
  103. $email = $_POST["email"];
  104.  
  105. $val = rejestruj($nazwa, $haslo, $imie, $nazwisko, $email);
  106.  
  107. if($val == OK){
  108. echo("Rejestracja poprawna. Możesz się <a href='login.php'>zalogować</a>.");
  109. }
  110. else if($val == BAD_USER_NAME_LENGTH){
  111. echo("Nazwa użytkownika musi mieć od 3 do 20 znaków.");
  112. }
  113. else if($val == BAD_USER_PASS_LENGTH){
  114. echo("Hasło musi mieć od 6 do 40 znaków.");
  115. }
  116. else if($val == USER_NAME_ALREADY_EXISTS){
  117. echo("Użytkownik $_POST[nazwa] jest już zarejestrowany.");
  118. }
  119. else if($val == EMPTY_FIELDS){
  120. echo("Proszę wypełnić wszystkie pola formularza.");
  121. }
  122. else{
  123. echo("Błąd serwera. Rejestracja nie powiodła się.");
  124. }
  125. }
  126. ?>
  127.  
  128. </h2>
  129. </body>
  130. </html>


plik new user.html
  1.  
  2.  
  3.  
  4. </head>
  5. <h2 align="center"> Wprowadź dane rejestracyjne: </h2>
  6. <form name = "formularz1"
  7. action = "rejestracja/new_user.php"
  8. method = "POST"
  9. >
  10. <table border="0" align="center"><tr>
  11.  
  12. <td>Nazwa użytkownika:</td>
  13. <td>
  14. <input type="text" name="nazwa">
  15. </td>
  16. </tr><tr>
  17.  
  18. <td>Hasło:</td>
  19. <td>
  20. <input type="password" name="haslo">
  21. </td>
  22. </tr><tr>
  23.  
  24. <td>Powtórz hasło:</td>
  25. <td>
  26. <input type="password" name="haslo2">
  27. </td>
  28. </tr><tr>
  29.  
  30. <td>Imię:</td>
  31. <td>
  32. <input type="text" name="imie">
  33. </td>
  34. </tr><tr>
  35.  
  36. <td>Nazwisko:</td>
  37. <td>
  38. <input type="text" name="nazwisko">
  39. </td>
  40. </tr><tr>
  41.  
  42. <td>E-mail:</td>
  43. <td>
  44. <input type="text" name="email">
  45. </td>
  46. </tr><tr>
  47.  
  48. <td colspan="2" align="right">
  49. <input type="button" value="Rejestracja" >
  50. </td>
  51. </tr></table>
  52. </form>
  53. </body>
  54. </html>


plik main.php
  1. <?php
  2. if(!isSet($_SESSION['zalogowany'])){
  3. $_SESSION['komunikat'] = "Nie jesteś zalogowany!";
  4. include('form.php');
  5. exit();
  6. }
  7. ?>
  8. <html>
  9. <head>
  10. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2">
  11. <title>Strona główna</title>
  12. </head>
  13. <body>
  14. Jesteś zalogowany jako: <?php echo $_SESSION['zalogowany'] ?>
  15. <br>
  16. Pamiętaj o wylogowaniu przed opuszczeniem strony!
  17. <br>
  18. <br>
  19. <a href="logout.php">Wylogowanie</a>
  20. </body>
  21. </html>


plik logout.php
  1. <?php
  2. if(!isSet($_SESSION['zalogowany'])){
  3. $komunikat = "Nie jesteś zalogowany!";
  4. }
  5. else{
  6. unset($_SESSION['zalogowany']);
  7. $komunikat = "Wylogowanie prawidłowe!";
  8. }
  9. ?>
  10. <html>
  11. <head>
  12. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2">
  13. <title>Wylogowanie</title>
  14. </head>
  15. <body>
  16. <?php echo $komunikat ?>
  17. <br><br>
  18. <a href="login.php">Powrót do strony logowania</a>
  19. </body>
  20. </html>



plik login.php

  1. <?PHP
  2. function checkPass($user, $pass)
  3. {
  4. /*sprawdzenie długości przekazanych ciągów*/
  5.  
  6. $userNameLength = strlen($user);
  7. $userPassLength = strlen($pass);
  8.  
  9. if($userNameLength < 3 || $userNameLength > 20 ||
  10.  $userPassLength < 6 || $userPassLength > 40){
  11. return 2;
  12. }
  13.  
  14. /*nawiązanie połączenia serwerem i wybór bazy*/
  15.  
  16. if (!$db_lnk = @mysql_connect("localhost", "php", "x")){
  17. //echo('Wystąpił błąd podczas próby połączenia z serwerem MySQL...');
  18. return 1;
  19. }
  20.  
  21. if(!@mysql_select_db('test')){
  22. //echo('Wystąpił błąd podczas wyboru bazy danych: test...');
  23. return 1;
  24. }
  25.  
  26. /*wykonanie zapytania sprawdzającego poprawność danych*/
  27.  
  28. $query = "SELECT COUNT(*) FROM Users WHERE Nazwa='$user' ";
  29. $query .= "AND Haslo='$pass'";
  30.  
  31. if(!$result = mysql_query($query, $db_lnk)){
  32. //echo('Wystąpił błąd: nieprawidłowe zapytanie...');
  33. return 1;
  34. }
  35.  
  36. /*sprawdzenie wyników zapytania*/
  37.  
  38. if(!$row = @mysql_fetch_row($result)){
  39. //echo('Wystąpił błąd: nieprawidłowe wyniki zapytania...');
  40. return 1;
  41. }
  42. else{
  43. if($row[0] <> 1){
  44. return 2;
  45. }
  46. else{
  47. return 0;
  48. }
  49. }
  50. }
  51.  
  52. /* rozpoczęcie sesji i procedur logowania*/
  53.  
  54. if(isSet($_SESSION['zalogowany'])){
  55. header("Location: main.php");
  56. }
  57. else if(!isSet($_POST["haslo"]) || !isSet($_POST["user"])){
  58. $_SESSION['komunikat'] = "Wprowadź nazwę i hasło użytkownika:";
  59. include('form.php');
  60. }
  61. else{
  62. $val = checkPass($_POST["user"], $_POST["haslo"]);
  63. if($val == 0){
  64. $_SESSION['zalogowany'] = $_POST["user"];
  65. header("Location: main.php");
  66. }
  67. else if($val == 1){
  68. $_SESSION['komunikat'] = "Błąd serwera. Zalogowanie nie było możliwe.";
  69. include('form.php');
  70. }
  71. else if($val == 2){
  72. $_SESSION['komunikat'] = "Nieprawidłowa nazwa lub hasło użytkownika.";
  73. include('form.php');
  74. }
  75. else{
  76. $_SESSION['komunikat'] = "Błąd serwera. Zalogowanie nie było możliwe.";
  77. include('form.php');
  78. }
  79. }
  80. ?>



ostatni plik form.php

  1. <html>
  2. <head>
  3. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2">
  4. <title>Logowanie</title>
  5. </head>
  6. <body>
  7. <h2 align="center">
  8. <?php
  9. if(isSet($_SESSION['komunikat']))
  10. echo $_SESSION['komunikat'];
  11. else
  12. echo "Wprowadź nazwę i hasło użytkownika:";
  13. ?>
  14. </h2>
  15. <form name = "formularz1"
  16. action = "http://localhost/login.php"
  17. method = "POST"
  18. >
  19. <table border="0" align="center"><tr>
  20. <td>Użytkownik:</td>
  21. <td>
  22. <input type="text" name="user">
  23. </td>
  24. </tr><tr>
  25. <td>Hasło:</td>
  26. <td>
  27. <input type="password" name="haslo">
  28. </td>
  29. </tr><tr>
  30. <td align="left">
  31. <a href="new_user.html">Rejestracja</a>
  32. </td>
  33. <td align="right">
  34. <input type="submit" value="Wejdź">
  35. </td>
  36. </tr></table>
  37. </form>
  38. </body>
  39. </html>


Po kliknieci rejestruj w pliku new user.html pojawia mi sie odpowiednia informacja z pliku new user.php (np. użytkownik już istenieje . Rejestracja udana itp. ) i chcę aby ta infromacja pokazała mi się w tym div . Tak jak i reszty to sie tyczy.
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.