Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> formularz rejestracji php/mysql
em-ba
post 6.01.2008, 19:07:15
Post #1





Grupa: Zarejestrowani
Postów: 202
Pomógł: 3
Dołączył: 6.01.2008
Skąd: Mazowieckie

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


Witam, chciałem zrobic swoja pierwsza rejestracje danych w php tak zeby zapisało w mysql ale coś mi sie nie udaje. nigdy tego nie robiłem i przyznam ze nie mam z tym zadnego doświadczenia. Liczę na pomoc. z gory dzieki


Kod
<form action ="rejestracja.php" method=post>
<table border =0>
<tr>
<td>ID:</td>
<td align="center"><input type="text" name="id" size="30" maxlenght="20"></td>
</tr>
<tr>
<td>Imię:</td>
<td align="center"><input type="text" name="imie" size="30" maxlenght="20"></td>
</tr>
<tr>
<td>Nazwisko:</td>
<td align="center"><input type="text" name="nazwisko" size="30" maxlenght="20"></td>
</tr>
<tr>
<td>Login:</td>
<td align="center"><input type="text" name="login" size="30" maxlenght="20"></td>
</tr>
<tr>
<td>Hasło:</td>
<td align="center"><input type="text" name="haslo" size="30" maxlenght="20"></td>
</tr>
<tr>
<td>Hasło:</td>
<td align="center"><input type="text" name="haslo2" size="30" maxlenght="20"></td>
</tr>
<tr>
<td>&nbsp</td>
<td align="center">&nbsp</td>
</tr>
<tr>
<td colspan align="center"><input type="submit" value="Zarejestruj"></td>
</tr>
</table>
</form>
<?php

$id=$_POST['id'];
$imie=$_POST['imie'];
$nazwisko=$_POST['nazwisko'];
$login=$POST['login'];
$haslo=$POST['haslo'];
$haslo2=$POST['haslo2'];

?>
<?php
      $polacz = @mysql_connect('localhost', 'root', 'krasnal') or die ("Nie moglem sie polaczyc z serwerem");

      mysql_select_db('fi_kur') or die ("Nie moglem znalesc bazy danych");

      mysql_query (INSERT INTO `uzytkownicy` ( `id` , `imie` , `nazwisko` , `login` , `haslo` , `haslo2` ))
                  VALUES (
                  '$id', '$imie' , '$nazwisko' , '$login' , '$haslo' , '$haslo2'
                  );

      mysql_close($polacz);

?>
Go to the top of the page
+Quote Post
radziowi
post 6.01.2008, 19:27:07
Post #2





Grupa: Zarejestrowani
Postów: 41
Pomógł: 0
Dołączył: 9.10.2006
Skąd: Brzozów

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


Wszystko co masz otoczone znacznikami <?php ?> włóż do jednego pliku. I nazwij plik rejestracja.php. Możesz również wykorzystać funkcje.


--------------------
Go to the top of the page
+Quote Post
cornholio666
post 6.01.2008, 19:31:50
Post #3





Grupa: Zarejestrowani
Postów: 472
Pomógł: 8
Dołączył: 14.03.2004
Skąd: Rzeszów

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


Cytat(radziowi @ 6.01.2008, 21:27:07 ) *
Wszystko co masz otoczone znacznikami <?php ?> włóż do jednego pliku. I nazwij plik rejestracja.php. Możesz również wykorzystać funkcje.


I w czym pomoże my to w rozwiązaniu jego problemu?

Co znaczy że ci się nie udaje ? wywala jakieś błędy ?


--------------------
I need TP for my bunghole!!!

Mój nowy przyjaciel - tytanowa płytka na stałe
------------------------------------------------------
AEGEE, kwiaciarnia rzeszów , notariusz rzeszów, zakład krawiecki rzeszów, paweł jakubowicz
Go to the top of the page
+Quote Post
em-ba
post 7.01.2008, 17:59:49
Post #4





Grupa: Zarejestrowani
Postów: 202
Pomógł: 3
Dołączył: 6.01.2008
Skąd: Mazowieckie

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


przepraszam, ze nie odp - awaria netu :-D

siedze na tym kolejny dzien i nic - pozmieniałem troche - niby cos drgnelo, tzn wysylajac formularz poporzez submit 'dodaj' zostaje mi pokazana czysta str z napisem rezultat i z $imie //to akurat dla kontroli dałem :-D

ALE W DALSZYM CIAGU NIE WIEM DLACZEGO NIE ZAPISUJE DANYCH DO BAZY

dodam jeszcze ze baza danych nazywa sie 'fi_kur' a tabela w niej zawarta 'uzytkownicy'

P.S. dawałem przez include na poczatku i tez nie działało wiec zmieniłem na taką formę jak teraz widać - myslałem ze to moze to coś pomorze ale nic

Kod
<h1> Wprowadz dane </h1>

<form action="rejestruj.php" method="POST">
<table border="0">

<tr><td>imię</td><td> <input type="text" name="imie" maxlenght="30" size="30"></td></tr>
<tr><td>nazwisko</td><td> <input type="text" name="nazwisko" maxlenght="30" size="30"></td></tr>
<tr><td>login</td><td> <input type="text" name="login" maxlenght="30" size="30"></td></tr>
<tr><td>haslo</td><td> <input type="password" name="haslo" maxlenght="30" size="30"></td></tr>
<tr><td>powtórz haslo</td><td> <input type="password" name="haslo2" maxlenght="30" size="30"></td></tr>
<tr><td colspan="2"><input type="submit" value="dodaj"


</table>
</form>


Kod
<html>
<head>
<title>rejestruj</title>
</head>
<body>

<h1>rezultat</h1>
<?php

$imie=addslashes($_POST['imie']);
$nazwisko=addslashes($_POST['nazwisko']);
$login=addslashes($_POST['login']);
$haslo=addslashes($_POST['haslo']);
$haslo2=addslashes($_POST['haslo2']);

if (!$imie || !$nazwisko || !$login || !$haslo || !$haslo2)
{
echo "Nie udalo sie";
}

$polaczenie = @mysql_connect ('localhost', 'root', 'krasnal') or die ("nie udało sie połączyć");
mysql_select_db('fi_kur') or die ("Nie mozna zlokalizowac bazy danych");

if (!empty($imie) && !empty($nazwisko) && !empty($login) && !empty($haslo) && !empty($haslo2))
{
$zapytanie = mysql_query("insert into uzytkownicy values ('".$imie."', '".$nazwisko."', '".$login."', '".$haslo."', '".$haslo2."')");
} else {
echo"nie udało się dodać do bazy";
}
echo"$imie";
?>
</body>
</html>
Go to the top of the page
+Quote Post
Lion_87
post 7.01.2008, 18:04:35
Post #5





Grupa: Zarejestrowani
Postów: 850
Pomógł: 120
Dołączył: 15.02.2007
Skąd: Łódź

Ostrzeżenie: (10%)
X----


może dodaj do zapytania null


mysql_query("insert into uzytkownicy values(NULL,'".$imie."', '".$nazwisko."', '".$login."', '".$haslo."', '".$haslo2."')");


i poatrz na to co wpisałeś
Cytat(em-ba @ 7.01.2008, 18:04:35 ) *
<tr><td colspan="2"><input type="submit" value="dodaj"

</table>
</form>


Ten post edytował Lion_87 7.01.2008, 18:11:31
Go to the top of the page
+Quote Post
em-ba
post 8.01.2008, 11:25:55
Post #6





Grupa: Zarejestrowani
Postów: 202
Pomógł: 3
Dołączył: 6.01.2008
Skąd: Mazowieckie

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


dalej to samo..

znalazłem jeden z błędów o ile sie nie myle, tzn w kodzie formularza pominąłem znaki $ przy zmiennych. usunąłem tą usterkę :-D i tym razem wyskakuje mi bląd który zdefiniowałem w kodzie rejestuj.php:

Rezultat
Nie udalo sie.nie udało się dodać do bazy

nie wiem czym to jest spowodowane..
Go to the top of the page
+Quote Post
potreb
post 8.01.2008, 12:39:44
Post #7





Grupa: Zarejestrowani
Postów: 1 568
Pomógł: 192
Dołączył: 7.03.2005
Skąd: Warszawa

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


  1. <html>
  2. <head>
  3. <title>rejestruj</title>
  4. </head>
  5. <body>
  6. <h1> Wprowadz dane </h1>
  7.  
  8. <form action="rejestruj.php" method="POST">
  9. <table border="0">
  10. <tr><td>imię</td><td> <input type="text" name="imie" maxlenght="30" size="30"></td></tr>
  11. <tr><td>nazwisko</td><td> <input type="text" name="nazwisko" maxlenght="30" size="30"></td></tr>
  12. <tr><td>login</td><td> <input type="text" name="login" maxlenght="30" size="30"></td></tr>
  13. <tr><td>haslo</td><td> <input type="password" name="haslo" maxlenght="30" size="30"></td></tr>
  14. <tr><td>powtórz haslo</td><td> <input type="password" name="haslo2" maxlenght="30" size="30"></td></tr>
  15. <tr><td colspan="2"><input type="submit" value="dodaj" name="send">
  16. </table>
  17. </form>
  18. <?php
  19. if ($_POST['send']){
  20. {
  21. if(!$_POST['imie'] || !$_POST['nazwisko'] || !$_POST['login'] || !$_POST['haslo'] || !$_POST['haslo2']){
  22. echo "wypełnij wszystkie pola";
  23. } else {
  24. $imie=addslashes($_POST['imie']);
  25. $nazwisko=addslashes($_POST['nazwisko']);
  26. $login=addslashes($_POST['login']);
  27. $haslo=addslashes($_POST['haslo']);
  28. $haslo2=addslashes($_POST['haslo2']);
  29. $polaczenie = @mysql_connect ('localhost', 'root', 'krasnal') or die ("nie udało sie połączyć");
  30. mysql_select_db('fi_kur') or die ("Nie mozna zlokalizowac bazy danych");
  31. $query = "INSERT INTO uzytkownicy VALUES ($id'', '$imie', '$nazwisko', '$login', '$haslo', '$haslo2')";
  32. $wykonaj = mysql_query ($query) or die(mysql_error());
  33. echo"<h1>Zostałeś zarejestrowany ".$imie."</h1>";
  34. }
  35. }
  36. }
  37. ?>
  38. </body>
  39. </html>


Ma działać, na drugi raz stosuj or die(mysql_error()); lub echo mysql_error(); bo takie zapytanie:
  1. <?php
  2. if (!empty($imie) && !empty($nazwisko) && !empty($login) && !empty($haslo) && !empty($haslo2))
  3. {
  4. $zapytanie = mysql_query("insert into uzytkownicy values ('".$imie."', '".$nazwisko."', '".$login."', '".$haslo."', '".$haslo2."')");
  5. } else {
  6. echo"nie udało się dodać do bazy";
  7. }
  8. ?>


niczego cię nie nauczy

Ten post edytował potreb 8.01.2008, 12:41:50


--------------------

Go to the top of the page
+Quote Post
em-ba
post 8.01.2008, 14:30:22
Post #8





Grupa: Zarejestrowani
Postów: 202
Pomógł: 3
Dołączył: 6.01.2008
Skąd: Mazowieckie

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


teraz działa :-))) ..dzięki wielkie za pomoc
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 5.05.2024 - 21:43