Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP][MySql]Zapis rekordów do bazy danych
demonical132
post 25.12.2012, 15:28:33
Post #1





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 25.12.2012

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


Witam,
Otóż, próbuję dodać parę rekordów do bazy danych poprzez php, ale nie wychodzi mi.Czy mógłby mi ktoś wskazać na czym polega problem ?
Plik config.php jest w 100% sprawny, więc to nie chodzi o niego.


  1.  
  2. <? include 'config.php';
  3. $tytul = $_POST['tytul'];
  4. $tresc = $_POST['tresc'];?>
  5. <!DOCTYPE html>
  6. <html>
  7. <head>
  8. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  9. <meta name="Description" content=" ------- UZUPELNIC POTEM ------ " />
  10. <meta name="Author" content="" />
  11. <meta name="language" content="pl" />
  12.  
  13. <title></title>
  14. </head>
  15. <body>
  16. <center>
  17. <form action="panel.php" method="post">
  18. Tytuł:   <input type="text" name="tytul"/> <br/>
  19. Treść:    <textarea name="tresc" rows="5" cols="30"></textarea> <br/>
  20. hasło administratora:   
  21. <input type="password" name="pass"/> <br/>
  22. <input type="submit" value="dodaj"/>
  23. </form>
  24. <?php
  25.  
  26.  
  27. //$dat = date("d.m.Y");
  28. $q = "INSERT INTO news SET
  29. tytul = '$tytul',
  30. tresc = '$tresc',
  31. data = now()";
  32.  
  33. if (isset($_POST['pass']) && $_POST['pass'] == "xxx") {
  34. echo("Dodano pomyślnie");
  35. }else{
  36. echo "Wpisz hasło!";
  37.  
  38. }
  39. ?>
  40. </center>
  41.  
  42.  
  43.  
  44. </body>
  45. </html>


Ten post edytował demonical132 25.12.2012, 15:44:37
Go to the top of the page
+Quote Post
Kshyhoo
post 25.12.2012, 15:37:17
Post #2





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




Jakieś błędy? Jaki komunikat? Co pokazuje echo zapytania?


--------------------
Go to the top of the page
+Quote Post
Dominator
post 25.12.2012, 15:40:26
Post #3





Grupa: Zarejestrowani
Postów: 565
Pomógł: 15
Dołączył: 11.10.2010

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


Brakuje Ci przecinka ...

Dodaj or die();
Go to the top of the page
+Quote Post
jeremiash
post 25.12.2012, 15:42:06
Post #4





Grupa: Zarejestrowani
Postów: 94
Pomógł: 5
Dołączył: 6.11.2012

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


rozumiem, że $_POST['pass'] przekazujesz do pliku oraz inne parametry które nie mogą być null ?

... pokaż komunikat jaki wywala

Ten post edytował jeremiash 25.12.2012, 15:43:12
Go to the top of the page
+Quote Post
demonical132
post 25.12.2012, 15:43:47
Post #5





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 25.12.2012

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


Co do przecinka nic nie dało, 'or die' nic nie wykazało. Jeśli chodzi o jakiekolwiek błędy to tylko Notki:
  1. Notice: Undefined variable: tytul in G:\xampp\htdocs\ZPGRecords\panel.php on line 29
  2. Notice: Undefined variable: tresc in G:\xampp\htdocs\ZPGRecords\panel.php on line 30


Tak to teraz wygląda:
  1. <? include 'config.php';
  2. $tytul = $_POST['tytul'];
  3. $tresc = $_POST['tresc'];?>
  4. <!DOCTYPE html>
  5. <html>
  6. <head>
  7. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  8. <meta name="Description" content=" ------- UZUPELNIC POTEM ------ " />
  9. <meta name="Author" content="" />
  10. <meta name="language" content="pl" />
  11.  
  12. <title></title>
  13. </head>
  14. <body>
  15. <center>
  16. <form action="panel.php" method="post">
  17. Tytuł:   <input type="text" name="tytul"/> <br/>
  18. Treść:    <textarea name="tresc" rows="5" cols="30"></textarea> <br/>
  19. hasło administratora:   
  20. <input type="password" name="pass"/> <br/>
  21. <input type="submit" value="dodaj"/>
  22. </form>
  23. <?php
  24.  
  25.  
  26. //$dat = date("d.m.Y");
  27. $q = "INSERT INTO news SET
  28. tytul = '$tytul',
  29. tresc = '$tresc',
  30. data = now()";
  31.  
  32. if (isset($_POST['pass']) && $_POST['pass'] == "xxx") {
  33. echo("Dodano pomyślnie");
  34. }else{
  35. echo "Wpisz hasło!";
  36.  
  37. }
  38. ?>
  39. </center>
  40.  
  41.  
  42.  
  43. </body>
  44. </html>

@up

$_POST['pass'] == "xxx"

o ile dobrze Cię zrozumiałem.

Ten post edytował demonical132 25.12.2012, 15:47:29
Go to the top of the page
+Quote Post
Kshyhoo
post 25.12.2012, 15:47:03
Post #6





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




Komunikaty świadczą, że nie masz zadeklarowanych zmiennych przed wysłaniem formularza.


--------------------
Go to the top of the page
+Quote Post
tomekmvr
post 25.12.2012, 15:55:46
Post #7





Grupa: Zarejestrowani
Postów: 116
Pomógł: 2
Dołączył: 11.09.2006

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


Co to w ogóle za składnia?
  1. $q = "INSERT INTO news SET
  2. tytul = '$tytul',
  3. tresc = '$tresc',
  4. data = now()";


zrób tak:
  1. $q = "INSERT INTO news (`tytul`, `tresc`, `data`) VALUES ('$tytul', '$tresc', now())";


--------------------
Go to the top of the page
+Quote Post
demonical132
post 25.12.2012, 15:55:56
Post #8





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 25.12.2012

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


@2up
W takim razie stworzyłem dwa oddzielne dokumenty:
panel.php(formularz)
  1.  
  2. <!DOCTYPE html>
  3. <html>
  4. <head>
  5. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  6. <meta name="Description" content=" ------- UZUPELNIC POTEM ------ " />
  7. <meta name="Author" content="" />
  8. <meta name="language" content="pl" />
  9.  
  10. <title></title>
  11. </head>
  12. <body>
  13. <center>
  14. <form action="dodaj.php" method="post">
  15. Tytuł:   <input type="text" name="tytul"/> <br/>
  16. Treść:    <textarea name="tresc" rows="5" cols="30"></textarea> <br/>
  17. hasło administratora:   
  18. <input type="password" name="pass"/> <br/>
  19. <input type="submit" value="dodaj"/>
  20. </form>
  21.  
  22. </center>
  23.  
  24.  
  25.  
  26. </body>
  27. </html>
  28.  
  29.  
  30.  
  31.  
  32.  


dodaj.php
  1. <? include 'config.php';
  2. $tytul = $_POST['tytul'];
  3. $tresc = $_POST['tresc'];
  4.  
  5.  
  6.  
  7. //$dat = date("d.m.Y");
  8. $q = "INSERT INTO news SET
  9. tytul = '$tytul',
  10. tresc = '$tresc',
  11. data = now()";
  12.  
  13. if (isset($_POST['pass']) && $_POST['pass'] == "abc123") {
  14. echo("Dodano pomyślnie");
  15. }else{
  16. echo "Wpisz hasło!";
  17.  
  18. }
  19. ?>


I po kliknięciu "Dodaj" jedyne co mi wyskakuje to pusty dokument dodaj.php, możesz mi powiedzieć co zrobiłem nie tak ?
@up
robiłem tak dużo wcześniej, niestety bez skutku

Ten post edytował demonical132 25.12.2012, 16:04:31
Go to the top of the page
+Quote Post
jeremiash
post 25.12.2012, 15:56:15
Post #9





Grupa: Zarejestrowani
Postów: 94
Pomógł: 5
Dołączył: 6.11.2012

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


Wygląda wszystko dobrze. Spróbuj przypisać wartość funkcji now() do zmiennej, przed dodaniem do bazy

  1. $czas= now();
  2. $q = "INSERT INTO news SET
  3.  
  4. tytul = '$tytul',
  5.  
  6. tresc = '$tresc',
  7.  
  8. data = '$czas' ";


Ten post edytował jeremiash 25.12.2012, 15:56:52
Go to the top of the page
+Quote Post
demonical132
post 25.12.2012, 16:03:13
Post #10





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 25.12.2012

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


Funkcji now(); nie można przypisać do zmiennej.

Ten post edytował demonical132 25.12.2012, 16:03:52
Go to the top of the page
+Quote Post
tomekmvr
post 25.12.2012, 16:08:23
Post #11





Grupa: Zarejestrowani
Postów: 116
Pomógł: 2
Dołączył: 11.09.2006

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


zieniłeś zapytanie tak jak pisałem CI wyrzej? na
  1. $q = "INSERT INTO news (`tytul`, `tresc`, `data`) VALUES ('$tytul', '$tresc', now())";

to zadziała pod warunkiem gdy kolumna data jest kolumną DATE

Jeśli CI to nie zadziała to zrób tak:
  1. $data = date("Y-m-d");
  2. $q = "INSERT INTO news (`tytul`, `tresc`, `data`) VALUES ('$tytul', '$tresc', '$data')";


Ten post edytował tomekmvr 25.12.2012, 16:08:53


--------------------
Go to the top of the page
+Quote Post
demonical132
post 25.12.2012, 16:18:05
Post #12





Grupa: Zarejestrowani
Postów: 5
Pomógł: 0
Dołączył: 25.12.2012

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


Działa !
Dzięki wszystkim za pomoc smile.gif



Ten post edytował demonical132 25.12.2012, 16:25:18
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: 26.04.2024 - 11:49