Mahay

Пользователь
  • Публикации

    43
  • Зарегистрирован

  • Посещение

Репутация

0 Обычная

О Mahay

  • Звание
    Участник
  1. Вывод данных из БД

    Сделал след. образом, не получается, выводит просто слово array ( <?php $result = mysql_query("SELECT * FROM allbum WHERE id='1' ORDER BY id DESC",$db); $start = mysql_fetch_array($result); $string == $start["images"]; $array = explode(',', $string); if(isset($start['id']) && !empty($start['id'])) { $i = 1; do{ printf(' <img src="%s"><br/> ',$array); $i++; }while($start = mysql_fetch_array($result));} // а вот тут закрыл скобочку условия ?>
  2. Вывод данных из БД

    Подскажите пожалуйста есть в базе mysql таблица ( allbum ) с полем ( images ). В поле ( images ) занесено следующие значение через запятую ( 1.jpg,2.jpg,3jpg ) Нужно вывести данное значение, таким образом, чтобы получилось в итоге так: <img src="1.jpg"><br/> <img src="2.jpg"><br/> <img src="3.jpg"><br/>
  3. Добрый день! Подскажите пожалуйста, что можно сделать. Есть 3 таблицы mySQL: 1. Таблица rooms id | room | places 1 | 101 | 6 2 | 103 | 2 3 | 105 | 6 4 | 108 | 8 2. Таблица reserved_places id | room | id_trip 1 | 101 | 1 2 | 101 | 1 3 | 101 | 1 4 | 105 | 1 5 | 105 | 1 6 | 105 | 2 3. Таблица trip id | title | rooms | hotel 1 | Open tour | 101,105,103 | Planeta 2 | - | - | - Задача заключается в следующем, нужно вывести все значения чтобы получилось так Номер 101: всего мест в номере - 6; осталось - 3Номер 103: всего мест в номере - 2; осталось - 2Номер 105: всего мест в номере - 6; осталось - 4
  4. <?phpif ($_REQUEST['submit333']) {implode(', ', $_POST['select1']);//заносим введенный пользователем логин в переменную $login, если он пустой, то уничтожаем переменную//заносим введенный пользователем пароль в переменную $password, если он пустой, то уничтожаем переменную// если такого нет, то сохраняем данные$result2 = mysql_query ("INSERT INTO `table` (select1) VALUES('$select1')");// Проверяем, есть ли ошибкиif ($result2=='TRUE'){echo "добавленно";}else {exit ("отказанно"); //останавливаем выполнение сценариев } } ?>строка создается в базе но ячейка пустая
  5. 1. Прошу прощения, знаю, пытаюсь просто разобраться 2. Array ( [0] => 1 [1] => 2 ) при выборе option1 и option2 Хочу понять как допустим занести значения из селекта через запятую, допустим при выборе option1 и option2 в базу бы занеслось 1, 2
  6. Начал разбираться с мультиселектом, понял принцип работы, нашел как реализовать, но столкнулся с проблемой. Проблема заключается в следующем: После выборки нужных нам <option> пытаюсь их отправить в созданную мною таблицу [table] в БД [multi] , но безрезультатно. ( Таблица содержит следующие ячейки: id(11) и select1 VARCHAR(255) SQL CREATE TABLE IF NOT EXISTS `table` ( `id` int(11) NOT NULL AUTO_INCREMENT, `select1` varchar(255) NOT NULL, PRIMARY KEY (`id`));PHP - index.php <?php$db = mysql_connect ("localhost","12345","12345");mysql_select_db ("multi",$db);mysql_query('SET NAMES utf8');mysql_query('SET CHARACTER SET utf8');?><!doctype html><html lang="en"><head><!-- Encoding utf8--><meta charset="utf-8"><!-- Meta, title, CSS, favicons, etc. --><meta http-equiv="X-UA-Compatible" content="IE=edge"><!-- disable iPhone inital scale --><meta name="viewport" content="width=device-width; initial-scale=1.0"><!-- Name site --><title>Мультиселект</title><!-- Description --><meta name="Description" content=""><!-- Keywords --><meta name="Keywords" content=""><style type="text/css"> .holder { width:200px; float:left; } #add,#remove { display:block; width:100px; border:1px solid #ccc; background:#eee; padding:10px; } select { margin:0 0 10px 0; width:150px; font:12px tahoma; padding:5px; height:300px; } option { padding:10px; }</style><script type="text/javascript" src="jquery.js"></script><script type="text/javascript">$(function(){//========================================================================// Убираем пункты из главного списка //---------------------------------------------- // Используя кнопки $('#remove').click(function() { move_option('#select1','#select2'); }); //---------------------------------------------- //---------------------------------------------- // По двойному клику $('#select1 option').live('dblclick',function(){ $(this).appendTo('#select2'); }); //----------------------------------------------//========================================================================//========================================================================// Добавляем пункты в первый список //---------------------------------------------- // Используя кнопки $('#add').click(function() { move_option('#select2','#select1'); }); //---------------------------------------------- //---------------------------------------------- // По двойному клику $('#select2 option').live('dblclick',function(){ $(this).appendTo('#select1'); }); //----------------------------------------------//========================================================================//========================================================================// Считаем, что в главном списке находится перечень нужных нам материалов// При клике на submit выделяем все пункты в главном списке $('#select_all').click(function(){ $('#select1 option').attr('selected', 'selected'); });//========================================================================}); function move_option(id_1, id_2){ $(id_1+' option:selected').each(function(el) { // у элемента id_1 собираем выбранные опции (option:selected) и на каждую (each) из них вешанм ф-цию $(this).appendTo(id_2); // внутрь id_2 вставляем выбранные ранее опции });}</script></head><body style="overflow-y: scroll;"><form action="" method="post"><div class="holder"> <select multiple="multiple" id="select1" name="select1[]"></select> <a href="javascript:;" id="remove">>></a></div><div class="holder"> <select multiple="multiple" id="select2"> <option value="1">Option 1</option> <option value="2">Option 2</option> <option value="3">Option 3</option> <option value="4">Option 4</option> <option value="5">Option 5</option> <option value="6">Option 6</option> </select> <a href="javascript:;" id="add"><<</a></div><input id="select_all" type="submit" name="submit333"/></form><!-- ОБРАБОТЧИК--><?phpif ($_REQUEST['submit333']) { print_r($_POST['select1']);//заносим введенный пользователем логин в переменную $login, если он пустой, то уничтожаем переменную//заносим введенный пользователем пароль в переменную $password, если он пустой, то уничтожаем переменную// если такого нет, то сохраняем данные$result2 = mysql_query ("INSERT INTO `table` (select1) VALUES('$select1')");// Проверяем, есть ли ошибкиif ($result2=='TRUE'){echo "добавленно";}else {exit ("отказанно"); //останавливаем выполнение сценариев } } ?> </body></html>Ссылка на все файлы, архив: https://drive.google.com/file/d/0B0Udvr_35FCoTHFudTRlNnJLMEk/edit?usp=sharing
  7. Подскажите пожалуйста в чем может быть проблема, не могу понять! 30 строка - else if (isset($_POST['name_'])//Если существует пароль <?php session_start(); include ("registr/bd.php");// файл bd.php должен быть в той же папке, что и все остальные, если это не так, то просто измените путь if (!empty($_SESSION['login']) and !empty($_SESSION['password'])) { //если существует логин и пароль в сессиях, то проверяем, действительны ли они $login = $_SESSION['login']; $password = $_SESSION['password']; $result2 = mysql_query("SELECT id FROM users WHERE login='$login' AND password='$password'",$db); $myrow2 = mysql_fetch_array($result2); if (empty($myrow2['id'])) { //Если не действительны, то закрываем доступ exit("Вход на эту страницу разрешен только зарегистрированным пользователям!"); } } else { //Проверяем, зарегистрирован ли вошедший exit("Вход на эту страницу разрешен только зарегистрированным пользователям!"); } $old_login = $_SESSION['login']; //Старый логин нам пригодиться $id = $_SESSION['id'];//идентификатор пользователя тоже нужен $ava = "avatars/net-avatara.jpg";//стандартное изображение будет кстати //////////////////////// ////////ИЗМЕНЕНИЕ ИМЕНИ //////////////////////// else if (isset($_POST['name_'])//Если существует пароль { $name_ = $_POST['name_']; $name_ = stripslashes($name_);$name_ = htmlspecialchars($name_);$name_ = trim($name_);//удаляем все лишнее if ($name_ == '') { exit("Вы не ввели пароль");} //если пароль не введен, то выдаем ошибку if (strlen($name_) < 3 or strlen($name_) > 15) {//проверка на количество символов exit ("Пароль должен состоять не менее чем из 3 символов и не более чем из 15."); //останавливаем выполнение сценариев } $result8 = mysql_query("UPDATE users SET name_='$name_' WHERE login='$old_login'",$db);//обновляем пароль if ($result8=='TRUE') {//если верно, то обновляем его в сессии $_SESSION['name_'] = $name_; echo "<html><head><meta http-equiv='Refresh' content='5; URL=page.php?id=".$_SESSION['id']."'></head><body>Ваш пароль изменен! Вы будете перемещены через 5 сек. Если не хотите ждать, то <a href='page.php?id=".$_SESSION['id']."'>нажмите сюда.</a></body></html>";}//отправляем обратно на его страницу } //////////////////////// ////////ИЗМЕНЕНИЕ ПАРОЛЯ //////////////////////// else if (isset($_POST['password']))//Если существует пароль { $password = $_POST['password']; $password = stripslashes($password);$password = htmlspecialchars($password);$password = trim($password);//удаляем все лишнее if ($password == '') { exit("Вы не ввели пароль");} //если пароль не введен, то выдаем ошибку if (strlen($password) < 3 or strlen($password) > 15) {//проверка на количество символов exit ("Пароль должен состоять не менее чем из 3 символов и не более чем из 15."); //останавливаем выполнение сценариев } $password = md5($password);//шифруем пароль $password = strrev($password);// для надежности добавим реверс $password = $password."b3p6f"; //можно добавить несколько своих символов по вкусу, например, вписав "b3p6f". Если этот пароль будут взламывать методом подбора у себя на сервере этой же md5,то явно ничего хорошего не выйдет. Но советую ставить другие символы, можно в начале строки или в середине. //При этом необходимо увеличить длину поля password в базе. Зашифрованный пароль может получится гораздо большего размера. $result4 = mysql_query("UPDATE users SET password='$password' WHERE login='$old_login'",$db);//обновляем пароль if ($result4=='TRUE') {//если верно, то обновляем его в сессии $_SESSION['password'] = $password; echo "<html><head><meta http-equiv='Refresh' content='5; URL=page.php?id=".$_SESSION['id']."'></head><body>Ваш пароль изменен! Вы будете перемещены через 5 сек. Если не хотите ждать, то <a href='page.php?id=".$_SESSION['id']."'>нажмите сюда.</a></body></html>";}//отправляем обратно на его страницу } //////////////////////// ////////ИЗМЕНЕНИЕ АВАТАРЫ //////////////////////// else if (isset($_FILES['fupload']['name'])) //отправлялась ли переменная { if (empty($_FILES['fupload']['name'])) { //если переменная пустая (пользователь не отправил изображение),то присваиваем ему заранее приготовленную картинку с надписью "нет аватара" $avatar = "registr/avatars/net-avatara.jpg"; //можете нарисовать net-avatara.jpg или взять в исходниках $result7 = mysql_query("SELECT avatar FROM users WHERE login='$old_login'",$db);//извлекаем текущий аватар $myrow7 = mysql_fetch_array($result7); if ($myrow7['avatar'] == $ava) {//если аватар был стандартный, то не удаляем его, ведь у на одна картинка на всех. $ava = 1; } else {unlink ($myrow7['avatar']);}//если аватар был свой, то удаляем его, затем поставим стандарт } else { //иначе - загружаем изображение пользователя для обновления $path_to_90_directory = 'registr/avatars/';//папка, куда будет загружаться начальная картинка и ее сжатая копия if(preg_match('/[.](JPG)|(jpg)|(jpeg)|(JPEG)|(gif)|(GIF)|(png)|(PNG)$/',$_FILES['fupload']['name']))//проверка формата исходного изображения { $filename = $_FILES['fupload']['name']; $source = $_FILES['fupload']['tmp_name']; $target = $path_to_90_directory . $filename; move_uploaded_file($source, $target);//загрузка оригинала в папку $path_to_90_directory if(preg_match('/[.](GIF)|(gif)$/', $filename)) { $im = imagecreatefromgif($path_to_90_directory.$filename) ; //если оригинал был в формате gif, то создаем изображение в этом же формате. Необходимо для последующего сжатия } if(preg_match('/[.](PNG)|(png)$/', $filename)) { $im = imagecreatefrompng($path_to_90_directory.$filename) ;//если оригинал был в формате png, то создаем изображение в этом же формате. Необходимо для последующего сжатия } if(preg_match('/[.](JPG)|(jpg)|(jpeg)|(JPEG)$/', $filename)) { $im = imagecreatefromjpeg($path_to_90_directory.$filename); //если оригинал был в формате jpg, то создаем изображение в этом же формате. Необходимо для последующего сжатия } //СОЗДАНИЕ КВАДРАТНОГО ИЗОБРАЖЕНИЯ И ЕГО ПОСЛЕДУЮЩЕЕ СЖАТИЕ ВЗЯТО С САЙТА www.codenet.ru // Создание квадрата 90x90 // dest - результирующее изображение // w - ширина изображения // ratio - коэффициент пропорциональности $w = 90; // квадратная 90x90. Можно поставить и другой размер. // создаём исходное изображение на основе // исходного файла и определяем его размеры $w_src = imagesx($im); //вычисляем ширину $h_src = imagesy($im); //вычисляем высоту изображения // создаём пустую квадратную картинку // важно именно truecolor!, иначе будем иметь 8-битный результат $dest = imagecreatetruecolor($w,$w); // вырезаем квадратную серединку по x, если фото горизонтальное if ($w_src>$h_src) imagecopyresampled($dest, $im, 0, 0, round((max($w_src,$h_src)-min($w_src,$h_src))/2), 0, $w, $w, min($w_src,$h_src), min($w_src,$h_src)); // вырезаем квадратную верхушку по y, // если фото вертикальное (хотя можно тоже серединку) if ($w_src<$h_src) imagecopyresampled($dest, $im, 0, 0, 0, 0, $w, $w, min($w_src,$h_src), min($w_src,$h_src)); // квадратная картинка масштабируется без вырезок if ($w_src==$h_src) imagecopyresampled($dest, $im, 0, 0, 0, 0, $w, $w, $w_src, $w_src); $date=time(); //вычисляем время в настоящий момент. imagejpeg($dest, $path_to_90_directory.$date.".jpg");//сохраняем изображение формата jpg в нужную папку, именем будет текущее время. Сделано, чтобы у аватаров не было одинаковых имен. //почему именно jpg? Он занимает очень мало места + уничтожается анимирование gif изображения, которое отвлекает пользователя. Не очень приятно читать его комментарий, когда краем глаза замечаешь какое-то движение. $avatar = $path_to_90_directory.$date.".jpg";//заносим в переменную путь до аватара. $delfull = $path_to_90_directory.$filename; unlink ($delfull);//удаляем оригинал загруженного изображения, он нам больше не нужен. Задачей было - получить миниатюру. $result7 = mysql_query("SELECT avatar FROM users WHERE login='$old_login'",$db);//извлекаем текущий аватар пользователя $myrow7 = mysql_fetch_array($result7); if ($myrow7['avatar'] == $ava) {//если он стандартный, то не удаляем его, ведь у нас одна картинка на всех. $ava = 1; } else {unlink ($myrow7['avatar']);}//если аватар был свой, то удаляем его } else { //в случае несоответствия формата, выдаем соответствующее сообщение exit ("Аватар должен быть в формате <strong>JPG,GIF или PNG</strong>"); } } $result4 = mysql_query("UPDATE users SET avatar='$avatar' WHERE login='$old_login'",$db);//обновляем аватар в базе if ($result4=='TRUE') {//если верно, то отправляем на личную страничку echo "Ваша аватарка изменена! Вы будете перемещены через 5 сек. Если не хотите ждать, то <a href='page.php?id=".$_SESSION['id']."'>нажмите сюда.</a>";} } ?>
  8. Счетчик посещаемости на сайте по IP

    А вы не могли бы подсказать как сделать счетчик с использованием куков? не советую, если пользователь почистит куки, то будет +1 пользователь Но все же как это можно реализовать, не многие пользователи чистят куки, а некоторые так вообще и не умеют)
  9. Счетчик посещаемости на сайте по IP

    А вы не могли бы подсказать как сделать счетчик с использованием куков?
  10. Подскажите пожалуйста, есть такой запрос <?php include("blocks/connect.php"); if (isset($_GET['id'])) {$id=$_GET['id'];} if (!isset($id)) {$id = 1;} if (!preg_match("|^[\d]+$|", $id)) { exit ("<p>Неверный формат запроса! Проверьте URL!"); } $result1 = mysql_query("SELECT * FROM articles WHERE id='$id'"); if (!$result1) { echo "<p>Запрос на выборку данных из базы не прошел.</p>"; exit(mysql_error()); } if (mysql_num_rows($result1) > 0) { $myrow1 = mysql_fetch_array($result1); $new_view = $myrow1["view"] + 1; $update = mysql_query ("UPDATE articles SET view='$new_view' WHERE id='$id'"); } else { echo "<p>Ошибка: обратитесь к разработчику</p>"; exit(); } ?> на постраничный вывод и счетчик посещаемости (где производная и столбик в таблицы view отвечающий за хранение кол-во просмотров). ПРОБЛЕМА заключается в следующем, хочу создать счетчик посещаемости с добавление ip адреса пользователя, то есть создать отдельно таблицу допустим ip_view c полями id, ip, id_page. что бы количество просмотров было строго по количеству просматриваемых людей, а никак сейчас при каждом обновление +1 просмотр. Помогите дописать код, буду очень благодарен.
  11. всем спасибо нашел сам изъян. нужно было так прописать: $result44 = mysql_query("SELECT COUNT(id_page='{$myrow1[id]}') FROM comments WHERE id_page='$myrow1[id]'");
  12. Есть такой запрос: <?php // Переменная хранит число сообщений выводимых на станице $num = 3; // Извлекаем из URL текущую страницу $page = $_GET['page']; // Определяем общее число сообщений в базе данных $result44 = mysql_query("SELECT COUNT(id_page) FROM comments"); $posts = mysql_result($result44, 0); // Находим общее число страниц $total = intval(($posts - 1) / 3) + 0; // Определяем начало сообщений для текущей страницы $page = intval($page); // Если значение $page меньше единицы или отрицательно // переходим на первую страницу // А если слишком большое, то переходим на последнюю if(empty($page) or $page < 0) $page = 1; if($page > $total) $page = $total; // Вычисляем начиная к какого номера // следует выводить сообщения $start = $page * 3 - 3; // Выбираем $num сообщений начиная с номера $start $result44 = mysql_query("SELECT * FROM comments WHERE id_page='$myrow1[id]' ORDER BY id2 DESC LIMIT $start, 3"); // В цикле переносим результаты запроса в массив $postrow while ( $postrow[] = mysql_fetch_array($result44)) ?> так же есть на этой же странице запрос на постраничный вывод: <?php include("blocks/connect.php"); if (isset($_GET['id'])) {$id=$_GET['id'];} if (!isset($id)) {$id = 1;} if (!preg_match("|^[\d]+$|", $id)) { exit ("<p>Неверный формат запроса! Проверьте URL!"); } $result1 = mysql_query("SELECT * FROM articles WHERE id='$id'"); if (!$result1) { echo "<p>Запрос на выборку данных из базы не прошел.</p>"; exit(mysql_error()); } if (mysql_num_rows($result1) > 0) { $myrow1 = mysql_fetch_array($result1); $new_view = $myrow1["view"] + 1; $update = mysql_query ("UPDATE articles SET view='$new_view' WHERE id='$id'"); } else { echo "<p>Ошибка: обратитесь к разработчику</p>"; exit(); } ?> Как сделать чтобы в первом запросе где // Определяем общее число сообщений в базе данных $result44 = mysql_query("SELECT COUNT(id_page) FROM comments"); $posts = mysql_result($result44, 0); Определить общее число одинаковых сообщений в базе данных, а именно что бы id_page = id выводимой страницы, пробовал прописать так $result44 = mysql_query("SELECT COUNT(id_page='$myrow1[id]') FROM comments"); не работает (. Помогите пожалуйста буду очень благодарен.
  13. <?php $result = mysql_query("SELECT * FROM comments WHERE id_page='$myrow1[id]' ORDER BY id DESC"); $comment = mysql_fetch_array($result); do{ printf(" <hr/ style='width:500px; margin-left: 10px; margin-top: 10px;'> <table border='0' cellspacing='0' cellpadding='0' style='width:400px; margin-top: 10px; margin-bottom: 10px; border: 0px solid #6c859e;'> <tr> <td style='width:70px' valign='top'> <a href='user.php?login=%s'><img src='%s' style='width:55px; margin-left: 10px; margin-top: 5px; -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px;' ></a> </td> <td style='' valign='top'> <a href='user.php?login=%s'><p style='color:#477499; margin-top: 5px;'>%s %s<p></a> <p>%s</p> <p style='color:#a4a5a7; margin-top: -10px; font-size: 11px;'>%s in %s</p> </td> </tr> </table> ",$comment["login"],$comment["avatar"],$comment["login"],$comment["name"],$comment["surname"],$comment["comment"],$comment["dates"],$comment["time"]); }while($comment = mysql_fetch_array($result)); ?> когда в базе нет записей, выводятся эти элементы <hr/ style='width:500px; margin-left: 10px; margin-top: 10px;'> и in - текст
  14. Так не получается, выводит почему то часть страницы без стилей, без картинок, можно сказать без всего попробовал прописать так как тут в статье http://ruseller.com/lessons.php?rub=29&id=740 RewriteEngine on RewriteRule ^user/([^/]+)/?$ user.php?login=$1 [L] Вот что выводит: Not Found The requested URL /user.php was not found on this server. Подсказка Денвера Вы ошиблись при наборе URL в браузере. Вероятнее всего, сервер пытается найти файл Z:/home/localhost/www/user.php, которого не существует. В случае использования CGI-скриптов, корректные пути к CGI-директориям следующие: URL Куда указывает http://***/cgi-glob/script.cgi /home/cgi-glob/script.cgi http://***/cgi/script.cgi /home/***/cgi/script.cgi http://***/cgi-bin/script.cgi /home/***/cgi-bin/script.cgi Apache/2.2.22 (Win32) mod_ssl/2.2.22 OpenSSL/1.0.1c PHP/5.2.12 Server at localhost Port 80 единственное, что понял, почему то путь не правильно прописывается Z:/home/localhost/www/user.php должно быть по идее Z:/home/localhost/www/oy/user.php, oy - это корневая папка сайта