} else{ for ($i=0; $i < $how; $i++) { $myrow = sql_fetch_result($result); $myrow_2 = sql_fetch_where('*','books',"book_id=$myrow[book]"); $book[$i][book_id] = $myrow_2[book_id]; $book[$i][book_title] = $myrow_2[book_title]; } } } else{ //если нет $_GET[id] жанра, выведем все жанры //узнаем сколько всего страниц $how_pages = sql_how('genre_id','genres'); if (isset($_GET[page]) && !empty($_GET[page])) { $page = dont_hack($_GET[page],int); $offset = ($page-1)*12; $result_1 = sql_limit('*','genres',"$offset,12"); for ($i=0; $i < $how_pages-1; $i++) { $myrow_1 = sql_fetch_result($result_1); $genre[$i][genre_id]=$myrow_1[genre_id]; $genre[$i][genre_name]=$myrow_1[genre_name]; } } else{ $result_1 = sql_limit('*','genres','12'); if ($how_pages>=12) { //присваеваем другой переменоой, чтоб не сбить страничную навигацию $how_a=12; } else{
//нужно создать жанр а для этого нужно получить значение инкремента $future_gen = get_id($db,genres); $ara6=array('genre_id'=>$future_gen, 'genre_name'=>$gen); sql_insert('genres',$ara6); //создали, присваеваем автора и кидаем выше на метку $row_find_genre[genre_id]=$future_gen; goto genre_one; } }else{ //есть запятые->жанров несколько //теперь проверять и создавать жанр нужно будет на каждой итерации //кинем жанры в масив $pieces_g = explode(",", $_POST[genre]); //переберем масив чтобы убрать пуcтоты если есть foreach ($pieces_g as $key => $value) { $pieces_g[$key] = dont_hack($value); } //теперь умешьшим масив если были пустоты $pieces_g = array_diff($pieces_g, array('')); for ($i=0; $i < count($pieces_g); $i++) { //вытаскиваем жанр $gen = $pieces_g[$i]; //провери наличие жанра в базе $how_find_genre = sql_how_where('genre_id', 'genres', "genre_name='$gen'"); //если жанр есть if ($how_find_genre >= 1) { //жанр есть //берем его id $genre_id = $myrow[genre_id]; genre_metka: //инсёртим жанр и книгу в таблицу книга_жанр
include_once __DIR__ . '/functions.php'; //подключаем хедер $title = 'Каталог'; include __DIR__ . '/views/header.php'; //если есть параметра search подключаем вывод резльтатов по поиску if (isset($_GET['search']) && !empty($_GET['search'])) { $title = 'Результаты поиска'; include __DIR__ . '/inc/search_result.php'; } //узнаем сколько всего книг и передадим значение для страничной навигации //сколько всего книг, подключаем пагинацию $how_pages = select('book_id','books','how_many'); //проверка на наличие параметра GET[page] if (isset($_GET['page']) && !empty($_GET['page'])) { $page = dont_hack($_GET['page'],int); $offset = ($page - 1) * 12; $result=select_end('*','books',"ORDER BY book_id DESC LIMIT $offset,12",''); } else{ $result = select_end('*','books',"ORDER BY book_id DESC LIMIT 12",''); } //сколько всего книг(для пагинации) $how = sql_how_result($result); //тк нумерация с нуля а количество нет for ($i=0; $i < $how; $i++) { $myrow = sql_fetch_result($result); $books[$i] = $myrow; //вытаскиваем в цикле авторов, если есть $result_2 = select_where('author','book_author',"book=$myrow[book_id]",''); //сколько авторов
if (isset($_POST[sub])) { // проверка адреса if (isset($_POST[addr]) && !empty($_POST[addr])) { // адрес есть, он не пустой $addr = dont_hack($_POST[addr]); //проверка имени if (isset($_POST[name]) && !empty($_POST[name])) { // имя есть $name = dont_hack($_POST[name]); // проверка количетва if (isset($_POST[cnt]) && !empty($_POST[cnt])) { // количество указано $cnt = dont_hack($_POST[cnt],int); // Всё ок, посылаем голубя include __DIR__ . '/config.php'; //обрежем RЕFERER чтоб получить id книги http://book/book.php?id= 25 символа $book_id = substr($_SERVER[HTTP_REFERER],25); //опять защита $book_id = dont_hack($book_id,int); //вытащим из базы название $myrow = sql_fetch_where('book_title','books', "book_id=$book_id"); $book = $myrow[book_title]; $text = "Имя: $name. Адресс: $addr. Книга(id) $book($book_id). $cnt шт."; mail(MAIL, 'Новый заказ', $text); $message="Ваш заказ принят! Книга: $book($cnt шт.)"; }else{$message='Вы не заполнили форму заказа!';} }else{$message='Вы не указали имя получателя!';} }else{$message='Вы не указали адресс доставки!';} } echo $message; exit();
<? include __DIR__ . '/../config.php'; include_once __DIR__ . '/../functions.php'; //подключаем хедер $title = 'Книга'; include __DIR__ . '/views/header.php'; $id = dont_hack($_GET[id],int); if ( isset($id) && !empty($id) ) { $how = sql_how_where('*', 'books', "book_id=$id"); if ($how == 0) { $message = '<h1>К сожалению такой книги нет</h1>'; echo $message; exit(); } $book = sql_fetch_where('*', 'books', "book_id=$id"); //ищем авторов по айди этой книги $result_2 = select_where('author','book_author',"book=$id",''); //сколько авторов $how_2 = sql_how_result($result_2); //если авторов больше одного используем цикл if ( !isset($how_2) or $how_2 == 0) { //echo nothing } else{ // если есть 1 автор if ($how_2 == 1) { $book_2 = sql_fetch_where('author', 'book_author', "book=$id"); $book_3 = sql_fetch_where('*', 'authors', "author_id=$book_2[author]");
<? include __DIR__ . '/../config.php'; include_once __DIR__ . '/../functions.php'; $search = dont_hack($_GET[search]); $result = sql_search('book_id,book_title','books','book_title',"$search"); $how = sql_how_result($result); echo "По запросу '".$search."' найдено $how результатов<br><hr>"; for ($i=0; $i < $how; $i++) { $row = sql_fetch_result($result); $cc = $row[cat]; //подбираем категорию $result_c= select_where('book_id,book_title', 'books',"book_id='".$cc."'",''); $row_c = sql_fetch_result($result_c); //вхождение и искомое слово обрамляем маркером $text_mark = str_replace("$search", "<mark>$search</mark>", "$row[book_title]"); echo "<a href=\"/book.php/?id=$row[book_id]\">$text_mark</a>"; echo "<br>"; } exit();