Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MYSQL] wybieranie tabeli
Roguś
post 8.06.2007, 12:24:38
Post #1





Grupa: Zarejestrowani
Postów: 132
Pomógł: 0
Dołączył: 14.12.2006
Skąd: Częstochowa

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


  1. $zapytanie = mysql_query("INSERT INTO ".$przedmiot." SET id='$id' (i tak dalej)


Chodzi mi o zmienna przedmiot. chce zeby dane były wsadzane do tabeli określonej w formularzu. Nie zabardzo wiem jak to zrobić

Ten post edytował Roguś 8.06.2007, 12:25:29


--------------------
http://www.twojanutka.pl Twoja Nutka - Moja pierwsza stronka
Go to the top of the page
+Quote Post
Darti
post 8.06.2007, 12:30:41
Post #2





Grupa: Zarejestrowani
Postów: 1 076
Pomógł: 62
Dołączył: 6.03.2005
Skąd: Wroc

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


Wcześniej zrób:
$przedmiot = $_POST['przedmiot'];
bo prawdopodobnie jest wyłączone register_globals


--------------------
The answer is out there, Neo. It's looking for you. And it will find you, if you want it to.
SERVER_SOFTWARE : Apache/2.2.4 (Win32) PHP/5.2.1
MySQL Client API version : 5.0.27
Go to the top of the page
+Quote Post
Roguś
post 8.06.2007, 12:32:41
Post #3





Grupa: Zarejestrowani
Postów: 132
Pomógł: 0
Dołączył: 14.12.2006
Skąd: Częstochowa

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


Juz to mam w skrypcie.


--------------------
http://www.twojanutka.pl Twoja Nutka - Moja pierwsza stronka
Go to the top of the page
+Quote Post
Darti
post 8.06.2007, 12:36:21
Post #4





Grupa: Zarejestrowani
Postów: 1 076
Pomógł: 62
Dołączył: 6.03.2005
Skąd: Wroc

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


  1. <?php
  2. $zapytanie = mysql_query("INSERT INTO `".$przedmiot."` SET `id`='$id'")// (i tak dalej)
  3. ?>
jeśli to nie pomoże to już nie wiem co innego Ci przeszkadza (może coś źle przekazujesz z formularza, np złą nazwę tabeli?)

Ten post edytował Darti 8.06.2007, 12:37:29


--------------------
The answer is out there, Neo. It's looking for you. And it will find you, if you want it to.
SERVER_SOFTWARE : Apache/2.2.4 (Win32) PHP/5.2.1
MySQL Client API version : 5.0.27
Go to the top of the page
+Quote Post
Roguś
post 8.06.2007, 12:51:30
Post #5





Grupa: Zarejestrowani
Postów: 132
Pomógł: 0
Dołączył: 14.12.2006
Skąd: Częstochowa

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


<?

$id = $_POST['id'];
$test1 = $_POST['test1'];
$test2 = $_POST['test2'];
$test3 = $_POST['test3'];
$test4 = $_POST['test4'];
$przedmiot = $_POST['przedmiot'];

$join = mysql_connect('xx','xxx','xxx')
or die ('błąd mysql');

$db = mysql_select_db('xxx',$join)
or die ('błąd db');

$zapytanie = mysql_query("INSERT INTO `.$przedmiot.` SET id='$id', test1='$test1', test2='$test2', test3='$test3', test4='$test4'");



?>

To cały skrypt


--------------------
http://www.twojanutka.pl Twoja Nutka - Moja pierwsza stronka
Go to the top of the page
+Quote Post
Void
post 8.06.2007, 13:15:57
Post #6





Grupa: Zarejestrowani
Postów: 112
Pomógł: 15
Dołączył: 2.02.2007

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


Cytat(Roguś @ 8.06.2007, 13:51:30 ) *
"INSERT INTO `.$przedmiot.` SET [...]"

ty chyba nie wiesz do czego w php służą kropki ;] są to operatory łączenia łancuchów znaków, więc wypadałoby najpierw zamknąć pierwszy łańcuch, za pomocą kropki dołączyć zmienną $przedmiot, i później rozpocząć kolejny łańcuch (tak jak pokazał Darti).

są więc dwie możliwości:
  1. <?php
  2. $zapytanie = mysql_query("INSERT INTO `".$przedmiot."` SET id='$id', test1='$test1', test2='$test2', test3='$test3', test4='$test4'");
  3. ?>

albo
  1. <?php
  2. $zapytanie = mysql_query("INSERT INTO `$przedmiot` SET id='$id', test1='$test1', test2='$test2', test3='$test3', test4='$test4'");
  3. ?>
Go to the top of the page
+Quote Post
Darti
post 8.06.2007, 13:17:07
Post #7





Grupa: Zarejestrowani
Postów: 1 076
Pomógł: 62
Dołączył: 6.03.2005
Skąd: Wroc

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


  1. <?php
  2. $zapytanie = mysql_query("INSERT INTO `".$przedmiot."`(`id`, `test1`, `test2`, `test3`, `test4`) VALUES ('$id', '$test1', '$test2', '$test3', '$test4'");
  3. ?>


Ten post edytował Darti 8.06.2007, 13:18:38


--------------------
The answer is out there, Neo. It's looking for you. And it will find you, if you want it to.
SERVER_SOFTWARE : Apache/2.2.4 (Win32) PHP/5.2.1
MySQL Client API version : 5.0.27
Go to the top of the page
+Quote Post
Roguś
post 8.06.2007, 13:49:05
Post #8





Grupa: Zarejestrowani
Postów: 132
Pomógł: 0
Dołączył: 14.12.2006
Skąd: Częstochowa

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


Chłopaki nie wiem dlaczego ale mnie to nie hula. Zaden z nich. Może podam cały plik

  1. <form aciton="ocenymata.php" method=post>
  2. id :<input type=text size=3 name=id>
  3. test1 :<input type=text size=3 name=test1>
  4. test2 :<input type=text size=3 name=test2>
  5. test3 :<input type=text size=3 name=test3>
  6. test4 :<input type=text size=3 name=test4>
  7. <select name="przedmiot">
  8. <option name="ocenypolak">J.polski</option>
  9. <option name="ocenymata">mata</option>
  10. <input type=submit>
  11. <? 
  12.  
  13. $id = $_POST['id'];
  14. $test1 = $_POST['test1'];
  15. $test2 = $_POST['test2'];
  16. $test3 = $_POST['test3'];
  17. $test4 = $_POST['test4'];
  18. $przedmiot = $_POST['przedmiot'];
  19.  
  20. $join = mysql_connect('xx','xx','xx')
  21. or die ('błąd mysql');
  22.  
  23. $db = mysql_select_db('xxx',$join) 
  24. or die ('błąd db');
  25.  
  26. $zapytanie = mysql_query("INSERT INTO `".$przedmiot."`(`id`, `test1`, `test2`, `test3`, `test4`) VALUES ('$id', '$test1', '$test2', '$test3', '$test4'");
  27. if ($zapytanie) {
  28. echo "ok"; }
  29. else { echo "błąd rekordu"; }
  30.  
  31.  
  32. ?>


--------------------
http://www.twojanutka.pl Twoja Nutka - Moja pierwsza stronka
Go to the top of the page
+Quote Post
Void
post 8.06.2007, 14:00:37
Post #9





Grupa: Zarejestrowani
Postów: 112
Pomógł: 15
Dołączył: 2.02.2007

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


Cytat(Roguś)
<form aciton="ocenymata.php" method=post>

a może action ? biggrin.gif

Poza tym nie dziwie się, że w zmiennej przedmiot nie ma żadnej wartości, skoro używasz złych atrybutów.
Zamiast
  1. <select name="przedmiot">
  2. <option name="ocenypolak">J.polski</option>
  3. <option name="ocenymata">mata</option>

powinno być
  1. <select name="przedmiot">
  2. <option value="ocenypolak">J.polski</option>
  3. <option value="ocenymata">mata</option>
  4. </select> <!-- pamiętaj o znaczniku zamykającym -->


edit: a tak btw, to używaj raczej znaczników <?php ?> zamiast <? ?>, bo niektóre konfiguracje serwerów nie przetwarzają poprawnie <? ?>.

Ten post edytował Void 8.06.2007, 14:13:58
Go to the top of the page
+Quote Post
Roguś
post 8.06.2007, 14:06:13
Post #10





Grupa: Zarejestrowani
Postów: 132
Pomógł: 0
Dołączył: 14.12.2006
Skąd: Częstochowa

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


Chłopaki ja nie wiem czemu nie działa :/ Po prostu masakra :/
aktualny kod
  1. <form action="ocenydod.php" method=post>
  2. id :<input type=text size=3 name=id>
  3. test1 :<input type=text size=3 name=test1>
  4. test2 :<input type=text size=3 name=test2>
  5. test3 :<input type=text size=3 name=test3>
  6. test4 :<input type=text size=3 name=test4>
  7. <select name="przedmiot">
  8. <option value="ocenypolak">J.polski</option>
  9. <option value="ocenymata">mata</option>
  10. </select>
  11. <input type=submit>
  12. <? 
  13.  
  14. $id = $_POST['id'];
  15. $test1 = $_POST['test1'];
  16. $test2 = $_POST['test2'];
  17. $test3 = $_POST['test3'];
  18. $test4 = $_POST['test4'];
  19. $przedmiot = $_POST['przedmiot'];
  20.  
  21. $join = mysql_connect('x','x','x')
  22. or die ('błąd mysql');
  23.  
  24. $db = mysql_select_db('x',$join) 
  25. or die ('błąd db');
  26.  
  27. $zapytanie = mysql_query("INSERT INTO `".$przedmiot."`(`id`, `test1`, `test2`, `test3`, `test4`) VALUES ('$id', '$test1', '$test2', '$test3', '$test4'");
  28. if ($zapytanie) {
  29. echo "ok"; }
  30. else { echo "błąd rekordu"; }
  31.  
  32.  
  33. ?>


Ten post edytował Roguś 8.06.2007, 14:13:20


--------------------
http://www.twojanutka.pl Twoja Nutka - Moja pierwsza stronka
Go to the top of the page
+Quote Post
Void
post 8.06.2007, 14:17:35
Post #11





Grupa: Zarejestrowani
Postów: 112
Pomógł: 15
Dołączył: 2.02.2007

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


Teraz zauważyłem że brakuje znacznika zamykającego formularz (</form>). poza tym daj jeszcze <?php zamiast <? (a dlaczego to pisałem post wcześniej :])
Go to the top of the page
+Quote Post
Roguś
post 8.06.2007, 16:01:54
Post #12





Grupa: Zarejestrowani
Postów: 132
Pomógł: 0
Dołączył: 14.12.2006
Skąd: Częstochowa

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


To również nie pomogło :/ Jak wpisze zamiast '".$przedmiot."' np ocenymata (nazwa tabeli) wszytsko gra.

Ten post edytował Roguś 8.06.2007, 16:03:02


--------------------
http://www.twojanutka.pl Twoja Nutka - Moja pierwsza stronka
Go to the top of the page
+Quote Post
Void
post 8.06.2007, 16:11:33
Post #13





Grupa: Zarejestrowani
Postów: 112
Pomógł: 15
Dołączył: 2.02.2007

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


a daj po prostu
  1. <?php
  2. echo $przedmiot;
  3. ?>
i zobacz czy wyświetla poprawną wartość. Jeśli tak, to nie mam pojęcia czemu nie podstawia tego w zapytaniu, a jeśli nie to znaczy że jest jakiś problem z pobieraniem danych z formularza i musisz jeszcze raz wszystko sprawdzić smile.gif
Go to the top of the page
+Quote Post
Roguś
post 8.06.2007, 16:38:58
Post #14





Grupa: Zarejestrowani
Postów: 132
Pomógł: 0
Dołączył: 14.12.2006
Skąd: Częstochowa

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


wyświetla : ocenypolak czyli niby wszytsko ok

Ten post edytował Roguś 8.06.2007, 16:40:21


--------------------
http://www.twojanutka.pl Twoja Nutka - Moja pierwsza stronka
Go to the top of the page
+Quote Post
webdice
post 8.06.2007, 19:52:08
Post #15


Developer


Grupa: Moderatorzy
Postów: 3 045
Pomógł: 290
Dołączył: 20.01.2007




  1. <?php
  2. $zapytanie = mysql_query("INSERT INTO `".$przedmiot."`(`id`, `test1`, `test2`, `test3`, `test4`) VALUES ('$id', '$test1', '$test2', '$test3', '$test4'") or die (mysql_error ())
  3. ?>


Jęśli wyświetla Ci się jakiś błąd to go skopiuj.
Go to the top of the page
+Quote Post
Roguś
post 8.06.2007, 20:40:04
Post #16





Grupa: Zarejestrowani
Postów: 132
Pomógł: 0
Dołączył: 14.12.2006
Skąd: Częstochowa

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


dostałem coś takiego....

Niedozwolona nazwa tabeli ''...


--------------------
http://www.twojanutka.pl Twoja Nutka - Moja pierwsza stronka
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: 14.06.2025 - 23:44