![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 30 Pomógł: 0 Dołączył: 9.12.2010 Ostrzeżenie: (0%) ![]() ![]() |
Witam. Mam problem, którego nie mogę rozwiązać już drugi dzień. Zupełnie nie wiem o co chodzi. Przeczytałem masę tutoriali i kursów, ale nie potrafię rozwiązać problemu z zapisaniem danych do bazy. Napisałem plik pierwszy.php o takiej treści:
Kod <? //////////////////// połączenie z bazą danych @$dane = mysql_pconnect("localhost", "root", "mojehaslo"); if (!$dane) { print "wystąpił błąd w połączeniu"; exit; } print "połączenie zostało nawiązane poprawnie"; print "<br><br>"; ///////////////////// wybór bazy danych ///////////////////////////////////// $wyborbazy=@mysql_select_db("test"); if ($wyborbazy) { print("została wybrana baza test"); } else { print("wystąpił błąd przy wyborze bazy danych"); exit; } /////////////////////// zapis do tabel w bazie danych ////////////////////////////////////// $query = "insert into dane values ('".."', '".coś tam."', '".drugie coś."', '".trzecie coś."', '".czwarte coś."')"; mysql_query($query); ?> Plik łączy się z bazą danych, ale nic do niej nie wpisuje. Jeśli natomiast w phpMyAdmin wykonam ręcznie zapytanie: Kod insert into dane values ('".."', '".coś tam."', '".drugie coś."', '".trzecie coś."', '".czwarte coś."') To dane się do bazy dopisują. Cóż takiego źle robię w pliku php, że z jego poziomu nie mogę nic dopisać do bazy ? Ten post edytował tombog 9.12.2010, 16:39:36 |
|
|
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk ![]() |
Temat: Jak poprawnie zadac pytanie
Zacznij od "Przygotuj właściwie środowisko pracy" -------------------- |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 30 Pomógł: 0 Dołączył: 9.12.2010 Ostrzeżenie: (0%) ![]() ![]() |
Kod <? //////// przygotowanie środowiska pracy error_reporting(E_ALL); ini_set('display_errors','1'); //////////////////// połączenie z bazą danych $dane = mysql_pconnect("localhost", "root", "thombog"); if (!$dane) { print "wystąpił błąd w połączeniu"; exit; } print "połączenie zostało nawiązane poprawnie"; print "<br><br>"; ///////////////////// wybór bazy danych ///////////////////////////////////// $wyborbazy=mysql_select_db("test"); if ($wyborbazy) { print("została wybrana baza test"); } else { print("wystąpił błąd przy wyborze bazy danych"); exit; } /////////////////////// zapis do tabel w bazie danych ////////////////////////////////////// $query = "insert into dane values ('".."', '".coś tam."', '".drugie coś."', '".trzecie coś."', '".czwarte coś."')"; mysql_query($query) or die('BŁĄD:'.mysql_error()); ?> Błąd jaki otrzymałem: Kod Parse error: syntax error, unexpected '.' in /var/www/html/pierwszy.php on line 29 Rozumiem, że kropki są nie mile widziane, więc je usunąłem: Kod $query = "insert into dane values ('""', '"coś tam"', '"drugie coś"', '"trzecie coś"', '"czwarte coś"')"; i otrzymałem wtedy: Kod Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING in /var/www/html/pierwszy.php on line 29 OK, usunąłem więc znaki ": Kod $query = "insert into dane values ('', 'coś tam', 'drugie coś', 'trzecie coś', 'czwarte coś')"; i w odpowiedzi dostałem: Kod połączenie zostało nawiązane poprawnie została wybrana baza testinsert into dane values ('', 'coś tam', 'drugie coś', 'trzecie coś', 'czwarte coś') poprawiłem więc na: Kod $query = "insert into 'dane' values ('', 'coś tam', 'drugie coś', 'trzecie coś', 'czwarte coś')"; co dało w efekcie: Kod połączenie zostało nawiązane poprawnie została wybrana baza test BŁĄD:You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''dane' values ('', 'coś tam', 'drugie coś', 'trzecie coś', 'czwarte coś')' at line 1 Zastanawiam się czy jest gdzieś granica tej zabawy ? Przecież pierwotna postać wpisana przez phpmyadmin dodała wpis, a w pliku php ciągle pluje błędami ? Gdzie robię błąd ![]() OK, więc pomimo wyświetlania błędów, dane do bazy są dopisywane poprzez: Kod $query = "INSERT INTO `dane` VALUES ('', 'coś', 'drugie coś', 'trzecie coś', 'czwarte coś')"; Dlaczego jednak wyświetla się tekie coś: Kod połączenie zostało nawiązane poprawnie została wybrana baza testINSERT INTO `dane` VALUES ('', 'coś', 'drugie coś', 'trzecie coś', 'czwarte coś') i jak się tego pozbyć ? Ten post edytował tombog 9.12.2010, 17:41:07 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 17 Pomógł: 0 Dołączył: 31.01.2010 Ostrzeżenie: (0%) ![]() ![]() |
po co na wyborze tabeli dajesz `` lub ' '. Mi wchodzi bez tego. Ten post edytował Rahael 9.12.2010, 18:40:20 |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 30 Pomógł: 0 Dołączył: 9.12.2010 Ostrzeżenie: (0%) ![]() ![]() |
No mi też bez tego wychodzi
![]() |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 31.07.2025 - 08:51 |