Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Dodawanie użytkownika do bazy, niedziałający skrypt
Kshyhoo
post
Post #1





Grupa: Opiekunowie
Postów: 3 855
Pomógł: 317
Dołączył: 4.01.2005
Skąd: że




Witam, nie działa mi skrypt dodawania nowego użytkownika do bazy. Działał, gdy miał nieco mniej pól w formularzu. Po dodaniu kolejnych, wykonuje się bez błędów (bynajmniej nie wyświetla nic), ale do bazy nie dodaje. Nie wiem, czy baza jest zdolna wykonać duże takie zapytanie:
  1. <?php
  2. function dodaj_form()
  3. {
  4. ?>
  5. <form method=post action=\"rejestracja.php\">
  6. <TABLE ALIGN=\"center\" border=0>
  7.  <tr>
  8.  <td colspan=2><b>Dodanie nowego użytkownika</b></td>
  9.  <tr>
  10.  <td>Login:</td>
  11.  <td><input type=text name=login></td>
  12.  </tr>
  13.  <tr>
  14.  <td>Funcja:</td>
  15.  <td><SELECT NAME=\"fucha\" MULTIPLE>
  16.  <OPTION> Dyrektor
  17.  <OPTION> Wychowawca
  18.  <OPTION> Nauczyciel
  19.  <OPTION> Rodzic
  20.  <OPTION> Uczeń
  21.  </SELECT>
  22.  </tr>
  23. // ... tu trochę kodu html ...
  24.  <tr>
  25.  <td>Płeć:</td>
  26.  <td><input type=\"radio\" value=\"m\" name=\"plec\"> Mężczyzna<br>
  27.  <input type=\"radio\" value=\"k\" name=\"plec\"> Kobieta</td>
  28.  </tr>
  29.  <tr>
  30.  <td>Hasło:</td>
  31.  <td><input type=password name=haslo></td>
  32.  </tr>
  33.  <tr>
  34.  <td>Powtórz hasło:</td>
  35. <td><input type=password name=haslo2></td></tr>
  36.  <tr>
  37.  <td colspan=2><b>Hasło do 12 znaków.</b></td>
  38.  </TR>
  39.  <tr>
  40.  <td align=center colspan=2>
  41.  <input type=submit value=\"Zapisz\"></td>
  42.  </tr>
  43.  </TABLE></form>
  44. <?
  45. html_url(&#092;"index.php\", \"Logowanie\");
  46. }
  47.  
  48. function dodaj_usera($login, $fucha, $imie, $nazwisko, $dataur, $miasto, $kod, $adres, $teldom, $telkom, $gg, $tlen, $aqq, $maildom, $mailslu, $plec, $haslo, $haslo2)
  49. {
  50. if ($haslo != $haslo2)
  51. {
  52. echo &#092;"<H3 ALIGN=center>Hasła muszą być identyczne.</h3>\";
  53. dodaj_form();
  54. }
  55. $polaczenie= pol_mysql();
  56. $wynik = mysql_query(&#092;"select * from users where login='$login'\");
  57. if(!$wynik)
  58. return &#092;"Problem: zapytanie z bazy nieudane\";
  59. if (mysql_num_rows($wynik)>0)
  60. {
  61. echo &#092;"<ALIGN=center><b>Użytkownik o takiej nazwie jest już zarejestrowany, spróbuj ponownie</b>\";
  62. dodaj_form();
  63. }
  64. $czas = date(&#092;"j-m-Y-G:i:s\");
  65.  
  66. $zapytanie = &#092;"insert into users values
  67.  ('', '$login', '$fucha', '$imie', '$nazwisko', '$dataur', '$miasto', '$kod', '$adres', '$teldom', '$telkom', '$gg', '$tlen', '$aqq', '$maildom', '$mailslu', '$plec', '$haslo', '$czas')&#092;";
  68. $wynik=mysql_query($zapytanie);
  69. if($wynik)
  70. {
  71. echo &#092;"<H3 ALIGN=center>Rejestracja zakończona pomyślnie</h3>\";
  72. }
  73. return true;
  74. }

Wkleiłem fragment formularza, który poprzedza funkcję dodającą usera do bazy.

Ten post edytował Kshyhoo 27.03.2005, 22:10:32
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
SongoQ
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 2 923
Pomógł: 9
Dołączył: 25.10.2004
Skąd: Rzeszów - studia / Warszawa - praca

Ostrzeżenie: (0%)
-----


  1. <?php
  2.  
  3. $zapytanie = &#092;"insert into users values
  4.  ('', '$login', '$fucha', '$imie', '$nazwisko', '$dataur', '$miasto', '$kod', '$adres', '$teldom', '$telkom', '$gg', '$tlen', '$aqq', '$maildom', '$mailslu', '$plec', '$haslo', '$czas')&#092;";
  5.  
  6. ?>


NIe mozesz tak stosowac bo jak bedziesz mial mnie pol to wstawia CI pokolei do pol jakie wystepuja i moze byc niezgodnosc typow. WIec musisz po users podac wszystkie pola do jakich wstawiasz.

insert into users (pole1, pole2, ...., polen) values .............

2. Zamiast robic funkcje tylu parametrowa przekaz jej tablice.
Go to the top of the page
+Quote Post
Kshyhoo
post
Post #3





Grupa: Opiekunowie
Postów: 3 855
Pomógł: 317
Dołączył: 4.01.2005
Skąd: że




Hmm, coś takiego?
  1. <?php
  2. $zapytanie = &#092;"insert into users ($login, $fucha, $imie, $nazwisko, $dataur, $miasto, $kod, $adres, $teldom, 
    $
  3. elkom, $gg, $tlen, $aqq, $maildom, $mailslu, $plec, $haslo, $haslo2) values
  4.  ('', '$login', '$fucha', '$imie', '$nazwisko', '$dataur', '$miasto', '$kod', '$adres', '$teldom', '$telkom', '$gg', '$tlen', '$aqq', '$maildom', '$mailslu', '$plec', '$haslo', '$czas')&#092;";
  5. $wynik=mysql_query($zapytanie);
  6. ?>

Tablice... trzeba jeszcze się dobrze znać. Na razie, jak widzisz, dłubię po omacku (drugi miesiąc nauczania php)...
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.08.2025 - 12:18