<?php //definicja stałych //połączenie $conn = mysql_connect(SQL_HOST, SQL_USER, SQL_PASS) or die ("Nie udało sie połączyć z bazą danych MySQL " . mysql_error()); //informacje do poprawnego kodowania ?>
Drugi błąd polega na tym że wywala mi błąd: "Unknown column 'title' in 'field list'"
<?php $amount = 123;//to jest liczba naszych newsów jakie dodamy proponuję zostawić bez zmian $content=<<<EOD TestTestTestTestTestTestTest <p class="hidden">TestTestTestTestTestTestTest TestTestTestTestTestTestTestTest TestTestTestTestTestTest TestTestTestTestTestTestTestTestv TestTestTestTestTestTest</p> <br /> <br /> <button>Czytaj więcej</button> <button class="przycisk"> Zwiń</button> <br /> <br /> TestTestTestTestTestTestTest <p class="hidden">TestTestTestTestTestTestTest TestTestTestTestTestTestTestTest TestTestTestTestTestTest TestTestTestTestTestTestTestTestv TestTestTestTestTestTest</p> <br /> <br /> <button>Czytaj więcej</button> <button class="przycisk"> Zwiń</button> <br /> <br /> TestTestTestTestTestTestTest <p class="hidden">TestTestTestTestTestTestTest TestTestTestTestTestTestTestTest TestTestTestTestTestTest TestTestTestTestTestTestTestTestv TestTestTestTestTestTest</p> <br /> <br /> <button>Czytaj więcej</button> <button class="przycisk"> Zwiń</button> EOD; for($i = 1; $i <= $amount; $i++){ $title = "Tytuł newsa testowego: ".$i; $query = "INSERT IGNORE INTO news(title, content) VALUES ('".$title."','".$content."')"; } //musimy wyciągnąć z bazy informacje o ilości postów ogólnie do wyliczenia ilości stron //celowo nie kożystamy z SQL_CALC_FOUND_ROWS, bo zależy nam na zabezpieczeniu się przed wś****skimi //użytkownikami, którzy zmodyfikują url i będą chcieli wejść na stronę jaka nie istnieje $query = "SELECT COUNT(*) as all_posts FROM news"; $onpage = 5; //ilość newsów na stronę $navnum = 7; //ilość wyświetlanych numerów stron, ze względów estetycznych niech będzie to liczba nieparzysta $allpages = ceil($all_posts/$onpage); //wszysttkie strony to zaokrąglony w górę iloraz wszystkich postów i ilości postów na stronę //sprawdzamy poprawnośc przekazanej zmiennej $_GET['page'] zwróć uwage na $_GET['page'] > $allpages if(!isset($_GET['page']) or $_GET['page'] > $allpages or !is_numeric($_GET['page']) or $_GET['page'] <= 0){ $page = 1; }else{ $page = $_GET['page']; } $limit = ($page - 1) * $onpage; //określamy od jakiego newsa będziemy pobierać informacje z bazy danych $query = "SELECT * FROM news ORDER BY id DESC LIMIT $limit, $onpage"; } //zabezpieczenie na wypadek gdyby ilość stron okazała sie większa niż ilośc wyświetlanych numerów stron if($navnum > $allpages){ $navnum = $allpages; } //ten fragment może być trudny do zrozumienia //wyliczane są tu niezbędne dane do prawidłowego zbudowania pętli //zmienne są bardzo opisowę więc nie będę ich tłumaczyć $forend = $forstart + $navnum; if($forstart <= 0){ $forstart = 1; } $overend = $allpages - $forend; if($overend < 0){ $forstart = $forstart + $overend + 1; } //ta linijka jest ponawiana ze względu na to, że $forstart mogła ulec zmianie $forend = $forstart + $navnum; //w tych zmiennych przechowujemy numery poprzedniej i następnej strony $prev = $page - 1; $next = $page + 1; //nie wpisujemy "sztywno" nazwy skryptu, pobieramy ja od serwera $script_name = $_SERVER['SCRIPT_NAME']; //ten fragment z kolei odpowiada za wyślwietenie naszej nawigacji for($forstart; $forstart < $forend; $forstart++){ if($forstart == $page){ }else{ } } if($forstart - 1 < $allpages) echo "<li><a href=\"".$script_name."?page=".$allpages."\">[".$allpages."]</a></li>"; ?>
Zapytanie:
CREATE TABLE IF NOT EXISTS `news` ( `id` int(9) NOT NULL AUTO_INCREMENT, `title` varchar(255) NOT NULL, `content` mediumtext NOT NULL, PRIMARY KEY (`id`), UNIQUE KEY `title` (`title`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
Bardzo proszę o pomoc dodam że jestem zielony w tym temacie