Shylios Opublikowano 21 Grudnia 2008 Udostępnij Opublikowano 21 Grudnia 2008 Ale dawno tutaj nie pisałem :D Więc mam taki problem, wpisuje z poziomu php do bazy danych $query="INSERT INTO news (`tytul`,`tresc1`,`tresc2`,`data`) VALUES ('".$_POST['tytul']."','".$_POST['tresc1']."','".$_POST['tresc2']."','".$_POST['data']."')"; $result=mysql_query($query) or die( mysql_error() ); I wywala mi błąd Table 'shylios.news' doesn't exist Pomimo że tabela istnieje, i gdy z poziomy phpmyadmin daje to samo tylko że zamiast zmiennych daje jakieś wartości to działa O_O Zaznaczę że połączenie jest dobrze napisane, oraz wszystkie zmienne mają wartość... Czy wiece czemu tak się dzieje?? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Filar Społeczności Ranmus Opublikowano 21 Grudnia 2008 Filar Społeczności Udostępnij Opublikowano 21 Grudnia 2008 A wybrałeś przedtem bazę danych? Poza tym powyższy zapis jest podatny na ataki typu sql injection (można swobodnie wyciągnać / wyczyścić bazę danych). Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Shylios Opublikowano 21 Grudnia 2008 Autor Udostępnij Opublikowano 21 Grudnia 2008 Tak wybrałem bazę, i zmodyfikowałem zapis... zaraz editne i napisze o co kaman tym razem EDIT: Mam coś takiego $tyt=$_POST['tytul']; $txt1=$_POST['tresc1']; $txt2=$_POST['tresc2']; $data=$_POST['data']; $query=mysql_query("INSERT INTO news SET tytul='$tyt';tresc1='$txt1',tresc2='$txt2',data='$data'"); $result=mysql_query($query) or die(mysql_error()); echo 'News dodany prawidłowo!'; A gdy dodaje newsa to dostaje błąd Query was empty Czy teraz jest bezpieczniej? I o co wreszcie chodzi że nie działa? ;/ Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Piczer Opublikowano 21 Grudnia 2008 Udostępnij Opublikowano 21 Grudnia 2008 Zamiast mysql_query daj echo i wklej do PHPMyAdmin EDIT, UP: Nie mysql_query, tylko mysql_fetch_row Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Shylios Opublikowano 22 Grudnia 2008 Autor Udostępnij Opublikowano 22 Grudnia 2008 EDIT, UP: Nie mysql_query, tylko mysql_fetch_row A co to pomoże? O_O - Czy może to było do Ranmy? :P Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Kofel Opublikowano 22 Grudnia 2008 Udostępnij Opublikowano 22 Grudnia 2008 Czy teraz jest bezpieczniej? I co to zmienia że zamiast bezpośredniego przekazania danych pierw je dasz do innych zmiennych a później do zapytania. lolol mysql_escape_string Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Shylios Opublikowano 22 Grudnia 2008 Autor Udostępnij Opublikowano 22 Grudnia 2008 $tyt=mysql_escape_string($_POST['tytul']); $txt1=mysql_escape_string($_POST['tresc1']); $txt2=mysql_escape_string($_POST['tresc2']); $data=mysql_escape_string($_POST['data']); O to chodziło? :P Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Kofel Opublikowano 22 Grudnia 2008 Udostępnij Opublikowano 22 Grudnia 2008 Bystry jesteś. lol ;d Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Shylios Opublikowano 22 Grudnia 2008 Autor Udostępnij Opublikowano 22 Grudnia 2008 Ale wciaż problem nie rozwiązany, wciąż zapytanie dochodzi puste Query was empty Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Kofel Opublikowano 22 Grudnia 2008 Udostępnij Opublikowano 22 Grudnia 2008 Ale chyba mój post miał Tobie powiedzieć tylko o zabezpieczeniu skryptu? EDIT: zamiast mysql_query daj echo i wstaw tu wynik. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Shylios Opublikowano 22 Grudnia 2008 Autor Udostępnij Opublikowano 22 Grudnia 2008 INSERT INTO news SET tytul='dsg';tresc1='dfg',tresc2='sdfg',data='11:33 - 22/12/2008'Query was empty Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Kofel Opublikowano 22 Grudnia 2008 Udostępnij Opublikowano 22 Grudnia 2008 ; <-- what the fuck? i dodaj cholerne spacje bo to wygląda jak jedno wielkie gówno, dlatego nie raz kurde trudno znaleść błędy jak ma się złe nawyki. ;s Rób SQL na wzór tego: INSERT INTO `news` SET `tytul` = 'dsg', `tresc1` = 'dfg', `tresc2` = 'sdfg', `data` = '11:33 - 22/12/2008'; Piczer, gratulacje. ślepy jesteś. ;D Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Piczer Opublikowano 22 Grudnia 2008 Udostępnij Opublikowano 22 Grudnia 2008 $tyt=$_POST['tytul']; $txt1=$_POST['tresc1']; $txt2=$_POST['tresc2']; $data=$_POST['data']; $query=mysql_query("INSERT INTO news SET tytul='$tyt';tresc1='$txt1',tresc2='$txt2',data='$data'"); echo ( $query ) ? 'TRUE' : 'FALSE'; // $result=mysql_query($query) or die(mysql_error()); echo 'News dodany prawidłowo!'; $result=mysql_query($query) or die(mysql_error()); ... Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Administratorzy gnysek Opublikowano 22 Grudnia 2008 Administratorzy Udostępnij Opublikowano 22 Grudnia 2008 masz dwa razy mysql_query: $query=mysql_query("INSERT INTO news SET tytul='$tyt';, tresc1='$txt1', tresc2='$txt2', data='$data';"); $result=mysql_query($query) or die(mysql_error()); echo 'News dodany prawidłowo!'; $query="INSERT INTO news SET tytul='$tyt';tresc1='$txt1',tresc2='$txt2',data='$data'"; $result=mysql_query($query) or die(mysql_error()); echo 'News dodany prawidłowo!'; Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Shylios Opublikowano 22 Grudnia 2008 Autor Udostępnij Opublikowano 22 Grudnia 2008 Poprawiłem tą literówke i nic się nie zmieniło, Racja, dwukrotnie query O_O Zrobiłem jak Ty gnysek mówisz i 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 'tresc1='asd',tresc2='asd',data='11:51 - 22/12/2008'' at line 1 EDIT: Zrobiłem aby było bardziej czytelne i $query="INSERT INTO `news` SET `tytul` = '$tyt', `tresc1` = '$txt1', `tresc2` = '$txt2', `data` = '$data';"; $result=mysql_query($query) or die(mysql_error()); echo 'News dodany prawidłowo!'; Table 'shylios.news' doesn't exist No WFT?! Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Piczer Opublikowano 22 Grudnia 2008 Udostępnij Opublikowano 22 Grudnia 2008 To ci chciałem powiedzieć parę postów wyżej, ale nie zajarzyłeś. Pomyliłem się, bo poprawiłem na mysql_fetch_row, bo myślałem, że to zapytanie SELECT, skoro tak go piszesz (widocznie uważniej muszę czytać wasze bzdury). UP: Zapytanie jest dobre, coś skopałeś np. w wybieraniu bazy. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Shylios Opublikowano 22 Grudnia 2008 Autor Udostępnij Opublikowano 22 Grudnia 2008 Mam napisane łączenie bazy wraz z obsługą błędów - gdyby baza nie istniała lub się nie udało połączyć wywaliło by błąd... //Łączenie z MySQL $mysql_connect=mysql_connect($mysql_dir,$mysql_login,$mysql_haslo) or die('Nie udało się połączyć z bazą MySQL'); mysql_select_db($mysql_nazwa,$mysql_connect) or die('Nie udało się wybrać bazy: '.$mysql_nazwa); A co do tabeli news, właśnie dodaje i usuwam wyniki z poziomy phpmyadmina, i nie ma żadnych błędów ;/ Więc tabela jest, ale apache jej nie widzi? O_O BTW: korzystam z www.db4free.net Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Administratorzy gnysek Opublikowano 22 Grudnia 2008 Administratorzy Udostępnij Opublikowano 22 Grudnia 2008 a $sql = "INSERT INTO news SET tytul = 'dsg', tresc1 = 'dfg', tresc2 = 'sdfg', data = '11:33 - 22/12/2008';"; mysql_query($sql); coś da ? ew. spróbuj SELECT i zobacz, czy możesz z tej bazy pobierać dane. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Shylios Opublikowano 22 Grudnia 2008 Autor Udostępnij Opublikowano 22 Grudnia 2008 To samo ;/ Jutro pobawie się z select oraz posiedze na innych bazach - może to coś da Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Piczer Opublikowano 23 Grudnia 2008 Udostępnij Opublikowano 23 Grudnia 2008 To sprawdź na innej bazie danych ._. Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto
Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.
Zarejestruj nowe konto
Załóż nowe konto. To bardzo proste!
Zarejestruj sięZaloguj się
Posiadasz już konto? Zaloguj się poniżej.
Zaloguj się