ďťż
Podstrony
|
telcocafeWitam, mam problem ze skryptem,powinien on dodawać do tablicy news_comment mojego commenta, lecz do tablicy w pole NEWS_ID zamiast id ( 1,2,3,... ) wprowadza wartość 0. W formulażu, po podglądzie źródła, ID Newsa jest poprawne, jednak nie dodaje się ono... Dlaczego ? <?php //jak jest pole autor, tzn. że przesyłamy formularz if (isset($_POST['autor'])) { //dostosowujemy wszystkie pola $_POST['autor']=konwertuj($_POST['autor']); $_POST['tytul']=konwertuj($_POST['tytul']); $_POST['tresc']=konwertuj($_POST['tresc']); //kontrolujemy poprawno¶ć $blad=''; if (strlen($_POST['tresc'])<10 || strlen($_POST['tresc'])>1024) $blad='Tre¶ć niusa ma nieprawidłow± długo¶ć!'; if (strlen($_POST['tytul'])<10 || strlen($_POST['tytul'])>200) $blad='Tytuł niusa ma nieprawidłow± długo¶ć!'; if (strlen($_POST['autor'])<3) $blad='¬le wprowadzono informacje o autorze!'; if ($blad!='') info($blad,'blad'); else { //dodajemy do tabeli //mysql_query("INSERT INTO news VALUES(\"$_POST[tytul]\",\"$_POST[tresc]\ ",\"$_POST[autor]\",\"$_POST[zrodlo]\ ",".time().",NULL)") or die(mysql_error()); mysql_query('INSERT INTO news_comment SET autor ="'.$_POST['autor'].'", tytul= "'.$_POST['tytul'].'", tresc= "'.$_POST['tresc'].'", news_id= "'.$_GET['news'].'", data_dodania="'.time().'"') or die(mysql_error()); info('Twój comment został zapisany.','ok'); include('aktualnosci.php'); return; } } else { $_POST['autor']=''; $_POST['tresc']=''; $_POST['tytul']=''; $_POST['news_id']=''; } ?> <form action="index.php?site=aktualnosci_read" method="POST"> <input type="hidden" name="site" value="aktualnosci_comment_add" /> <table border="0"> <tr><td>Tytuł:</td><td><input size="30" type="text" name="tytul" value="<?php echo $_POST['tytul']; ?>" /></td></tr> <tr><td>Tre¶ć:</td><td><textarea cols="40" rows="5" name="tresc"><?php echo $_POST['tresc']; ?></textarea></td></tr> <tr><td>¬ródło:</td><td><input size="30" type="hidden" name="news_id" value="<?php echo $_GET['news']; ?>" /></td></tr> <tr><td>Autor:</td><td><input size="30" type="text" name="autor" value="<?php echo $_POST['autor']; ?>" /></td></tr> <tr><td></td><td><input type="submit" value="Dodaj nowy nius" /></td></tr> </table> </form> P.s. Czy pole w fragmencie dodawania skryptu - news_id= "'.$_GET['news'].'" - jest dobre ? Może powinienem to zmienić na - news_id= "'.$_POST['news'].'" ?? POMOCY ! Forma dodawania newsów prowadzi do index.php?site=aktualnosci_read natomiast ty chcesz odczytywać news_id z tablicy $_GET (w której znajduje się tylko zapis $site=>'aktualnosci_read'). Przesyłaj te dane za pomocą POST. Poza tym, wiesz czym się różni tabela $_POST od $_GET ? Proste - zmień w tym miejscu $_GET na $_POST .. @ADEX: "oraz oczywiscie w bazie ustawiony "auto_increment" na news_id ..." Po co ?! Przecież wtedy NEWS_ID 1,2,3 i kazdy news będzie miał 1 komentarz. -=-=-=-=-=-=-=-=-=-=-=-=-=-= "Forma dodawania newsów prowadzi do index.php?site=aktualnosci_read natomiast ty chcesz odczytywać news_id z tablicy $_GET (w której znajduje się tylko zapis $site=>'aktualnosci_read'). " NIE, Ja na głównej stronie z newsami mam linki, i gdy otwieram strone z komentarzem to jej adres = index.php?site=aktualnosci_read&news_id=[tu_id] ... I wiem czym sie różni $_GET od $_POST :P Tylko że jestem początkujący w tych klocach @EDIT: BAAAA.... Po zmianie z $_GET na $_POST odczytuje mi to shoubox ;/ To jest jakiś inne... Jak to mo.zliwe że shoutbox odczytuje z tabeli NEWS_COMMENT dane ? Mam ustawione żeby pobierał dane z tabeli SHOUTBOX @EDIT_2: Dobra, już sobie poradziłem, a shout posiada te same pola co w newsach itp wiec i on dodawał swoje pola, tylko że on je poprawnie odczytywał... _+________________ TEMAT DO ZAMKNIĘCIA ________________+_ Użytkownik Sith edytował ten post 20 listopad 2006, 20:11 |
|||
Sitedesign by AltusUmbrae. |