PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи

Страниц (4): « 1 [2] 3 4 »

> Найдено сообщений: 52
shurik_7866 Отправлено: 14 Января, 2016 - 10:15:23 • Тема: Проверка источника AJAX запроса внутри вызываемого скрипта • Форум: HTTP и PHP

Ответов: 4
Просмотров: 1718
Проблема следующая

Со страницы сайта с помощью AJAX запроса вызывается скрипт execute_query.php который выполняет sql запрос в базу данных.
Скрипту передается параметр query - который содержит запрос к базе данных.

Можно ли достоверно убедиться что AJAX запрос пришел от внутреннего скрипта сайта, а не от стороннего скрипта?

Для простоты понимания проблемы
Если AJAX запрос с методом GET то зарегистрированному пользователю для выполнения своего собственного запроса достаточно лишь виполнить следующий HTTP запрос http://www[dot]site/inner_path/execu[dot][dot].php?query=запрос пользователя.
Если запрос с методом POST то надо написать простенький HTML документ в котором будет послан AJAX запрос.
Единственное что этому припятствует это знание структуры базы данных.
shurik_7866 Отправлено: 05 Января, 2016 - 14:35:08 • Тема: Ajax запрос - как получить структурированный ответ от скрипта • Форум: HTTP и PHP

Ответов: 2
Просмотров: 956
Спасибо пользователю DelphinPRO, работает

только масив в PHP чуть по другому
PHP:
скопировать код в буфер обмена
  1. $response = array(
  2.     "key1"=> "тра-та-та",
  3.     "key2"=> "ля-ля-ля",
  4.     "key3"=> "и так далее"
  5. );
shurik_7866 Отправлено: 04 Января, 2016 - 19:40:36 • Тема: Ajax запрос - как получить структурированный ответ от скрипта • Форум: HTTP и PHP

Ответов: 2
Просмотров: 956
В примерах которые я нашел в интернете, если нужно в страницу с которой был ajax запрос передать данные, используется конструкция echo с помощью которой формируется текст ответа.

ajax запрос
CODE (javascript):
скопировать код в буфер обмена
  1. var val = 1234567;
  2. $.ajax({
  3.         method: "GET",
  4.         url: "simple.php",
  5.         data: {"param1": val},
  6.         async: false,
  7.         success: function(data){
  8.                 alert(data);
  9.         }
  10. });


simple.php
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. $p1 = $_GET["param1"];
  3. ......
  4. echo "тра-та-та";
  5. echo "ля-ля-ля";
  6. echo "и так далее";
  7. ...
  8. ?>


Вопрос: можно ли в ajax запросе получить от php скрипта структурированный ответ?

Например: как при перенаправлении на конкретную страницу используя функцию header
header('Location: http://localhost/siple.html?error_code=1&msg1=тра-та-та&msg2=ля-ля-ля&msg3=');
При этом формируется при этом передаюися значения конкретных переменных
shurik_7866 Отправлено: 29 Декабря, 2015 - 17:46:12 • Тема: Загрузка файла на сервер с использованием ajax • Форум: HTTP и PHP

Ответов: 4
Просмотров: 902
Загрузка файла на сервер с использованием ajax

Во всех интернет ресурсах где рассматривается загрузка файлов - загрузка выполняется php скриптом на который отправляются данные формы после операции "submit".
Я ищу способ передать файл на загрузку в скрипт php используя ajax. Основная цель - не покидать web форму в которой пользователь выбирает файл.

Ниже привожу упрощенный пример для лучшего понимания вопроса

Простейшая форма для загрузки файл
CODE (html):
скопировать код в буфер обмена
  1. <form id="reg_form" name="reg_form" method="post" enctype="multipart/form-data" action="simple.php">
  2. <input type="hidden" name="MAX_FILE_SIZE" value="10500000"/>
  3. <input type="file" name="pic" accept="image/jpg" size="30"/>
  4. <input type="submit" name="to_load" value="загрузить изображение"/>
  5. </form>


простейший скрипт по загрузке файла
simple.php
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. move_uploaded_file($_FILES["pic"]["tmp_name"], "tmp/loaded_img.JPG");
  3. ?>


Можно ли как то выполнить simple.php через ajax, а не после операции submit?
shurik_7866 Отправлено: 28 Декабря, 2015 - 14:08:58 • Тема: Вопрос по загрузке изображения с последующим созданием миниатюры и сохранением ее в БД • Форум: Графика в PHP

Ответов: 0
Просмотров: 695
У меня следующая задача: загрузить изображение, изменить размеры, сохранить в БД.
У меня есть работающий алгоритм (приведен ниже), но в нем есть на мой взгляд лишние действия:

3.Сохранить созданную миниатюру на диск
4.Прочитать с диска миниатюру (перед сохранением в БД)
6.Удалить миниатюру


Упрощенный алгоритм
PHP:
скопировать код в буфер обмена
  1. //1. Создаем изображение на основе существующего
  2. $img = ImageCreateFromJpeg($_FILES["pic"]["tmp_name"]);
  3.  
  4. //2. Создаем уменьшеную копию - далее миниатюру
  5. //размери оригинала
  6. $img_x = imagesx($img); $img_y = imagesy($img);
  7. //размеры новые
  8. $img_new_x = 200; $img_new_y = round($img_y*$img_new_x/$img_x);
  9. //создаем миниатюру
  10. $img_new = ImageCreateTrueColor($img_new_x, $img_new_y);
  11. ImageCopyResampled($img_new, $img, 0, 0, 0, 0, $img_new_x, $img_new_y, $img_x, $img_y);
  12.  
  13. //3.сохранить на диск
  14. $dst = fopen("out/{$_FILES["pic"]["name"]}","w");
  15. imagegif($img_new, $dst);
  16. fclose($dst);
  17.  
  18. //4.Читаем с диска миниатюру
  19. $image_data = mysql_real_escape_string(file_get_contents($_FILES["user_pic"]["tmp_name"]));
  20.  
  21. //5.Сохраняем миниатюру в базу
  22. $query = "insert into images(image_data) values('".$image_data."');";
  23. $result = mysql_query($query);
  24.  
  25. //6.Удаляем с диска миниатюру - за ненадобностью
  26. unlink("out/{$_FILES["pic"]["name"]}");


Вопрос: что нужно подправить в скрипте что бы удалить пункты 3, 4, 6? Нужно для уменьшения файловых операций.

!В интернете все примеры сохранения изображения в базу которые я нашел производятся с использованием функции file_get_contents(), что подразумевает предварительное сохранение миниатюры в файл.
shurik_7866 Отправлено: 25 Декабря, 2015 - 10:52:15 • Тема: Изменение размеров изображения (GIF) без потери анимации • Форум: Графика в PHP

Ответов: 1
Просмотров: 995
Для изменения размера картинки GIF, использую следующий скрипт (при этом теряется анимация)

PHP:
скопировать код в буфер обмена
  1. //создаем изображение с файла
  2. $img = ImageCreateFromGif($_FILES["pic"]["tmp_name"];
  3.  
  4. //размери оригинала
  5. $img_x = imagesx($img);
  6. $img_y = imagesy($img);
  7.  
  8. //размеры новые
  9. $img_new_x = 200;
  10. $img_new_y = round($img_y*$img_new_x/$img_x);
  11.  
  12. //изменяем размеры
  13. $img_new = ImageCreateTrueColor($img_new_x, $img_new_y);
  14. ImageCopyResampled($img_new, $img, 0, 0, 0, 0, $img_new_x, $img_new_y, $img_x, $img_y);
  15.  
  16. //сохранить на диск
  17. $dst = fopen("out/{$_FILES["pic"]["name"]}","w");
  18. imagegif($img_new, $dst);
  19. fclose($dst);
  20.  

Подскажите кто знает, что нужно подправить что бы не терялась анимация.

!На просторах интернет нашел способ конвертации с помощью ImageMagick которую нужно отдельно устанавливать. А хотелось бы обойтись стандартными средствами.
shurik_7866 Отправлено: 22 Декабря, 2015 - 14:25:16 • Тема: Обращение к потомкам элемента через переменную this • Форум: JavaScript & VBScript

Ответов: 1
Просмотров: 521
Используя переменную this можно обращаться к потомкам по индексу - порядку следования.
Например:
this.children[1].innerHTML = ".....";

Вопрос:
Можно ли обратиться к потомку не по индексу, а например по имени тега, классу, значению какого-то атрибута?

Не банальным перебором в цикле всех дочерних элементов.

!Интересует исключительно возможность без использования библиотеки jquery.
shurik_7866 Отправлено: 21 Декабря, 2015 - 11:05:41 • Тема: Вопрос по заданию прозрачности фонового рисунка • Форум: HTML, Дизайн & CSS

Ответов: 1
Просмотров: 622
Я знаю про такой способ реализации прозрачности фонового рисунка
CODE (html):
скопировать код в буфер обмена
  1. <style>
  2. div.div1{background: url(img/main.jpg); opacity: 0.5;}
  3. </style>

Недостатком является то что прозрачность задается не толко для фонового рисунка но также и для текста помещенного в элемент


Есть еще такой способ, но не для фонового рисунка, а для фонового цвета
CODE (html):
скопировать код в буфер обмена
  1. <style>
  2. div.div1{background: rgba(255,255,170,0.5); /*цвет и прозрачность фона*/}
  3. </style>

В этом случае прозрачность касается только фонового цвета и не касается текста помещенного в элемент.

Вопрос:
Нельзя ли задать прозрачность фонового рисунка таким образом что бы прозрачность касалась только фонового рисунка и не касалась текста помещенного в элемент?
shurik_7866 Отправлено: 15 Декабря, 2015 - 23:21:10 • Тема: Как получить handle дочернего элемента если функция вызывается по событию • Форум: JavaScript & VBScript

Ответов: 3
Просмотров: 708
Полагаю нужно использовать оператор this, но как не понятно

Напрямую
CODE (javascript):
скопировать код в буфер обмена
  1. span = this.getElementById("span2");
не работает
shurik_7866 Отправлено: 15 Декабря, 2015 - 19:56:12 • Тема: Как получить handle дочернего элемента если функция вызывается по событию • Форум: JavaScript & VBScript

Ответов: 3
Просмотров: 708
Для задания координат подсказки для элементов div на все div с name="div2" навешивается Listener который вызывает функцию mousemove_xy в которой собственно и задаются координаты бокса с текстом подсказки.

Но в моем случае, для того чтобы получить handle всплывающей подсказки я испольую его id. И пока у меня только один элемент div и один <span id="span2"> на странице.

CODE (html):
скопировать код в буфер обмена
  1. <div id="div2" name="div2" class="div1 photo">
  2. <img src="saperavi-severnyj-250x383.jpg" class="img1"/>
  3. <span id="span2">Сорт винограда 'Саперави северный'</span>
  4. </div>


CODE (javascript):
скопировать код в буфер обмена
  1.  
  2. <script>
  3. var divs=document.getElementsByName("div2");
  4. for (i=0; i<divs.length; i++){
  5.         divs[i].addEventListener("mousemove", mousemove_xy);
  6. }
  7.  
  8. function mousemove_xy(event){
  9. var item2 = document.getElementById("span2");          
  10. item2.style.left=event.offsetX+10;
  11. item2.style.top=event.offsetY+10;
  12. }
  13. </script>
  14.  


Как определить для какого div[i] выполняется функция - что бы потом определить просто дочерний span, а не искать его по id?
shurik_7866 Отправлено: 14 Декабря, 2015 - 13:59:34 • Тема: Реализация всплывающей подсказки следующей за курсором мыши • Форум: JavaScript & VBScript

Ответов: 1
Просмотров: 674
В интернете полно ресурсов как реализовать с помощью css, но все они статические. С этим проблем не возникло. Кому интересно неплохой demo с исходником http://ruseller[dot]com/lessons.php?rub=2&id=664 .

1. Подскажите, как создать всплывающую подсказку так чтобы окно с подсказкой для элемента на странице прорисовывалось относительно курсора мыши.
2. Можно ли обойтись без javascript, а только лишь средствами html и css.

Для примера, как реализовано на сайте(просто для примера):http://саженцы-винограда[dot]in[dot]ua/c[dot][dot][dot]%80%D0%B0%D0%B4/
Если навести курсор на фото винограда появится описание в рамке которое перепрорисовывается при перемещении мыши.
К сожалению если скопировать код и сохранить в локальную страницу, то всплывающая подсказка не работает, видимо не подтягивается какой-то ресурс. Потому понять как там сделано до конца не получается.
shurik_7866 Отправлено: 14 Сентября, 2015 - 20:13:07 • Тема: Можно ли плагин jquery - validation применить для button, а не submit? • Форум: JavaScript & VBScript

Ответов: 1
Просмотров: 445
Проблема в следующем
валидация с помощью плагина jquery - validation во всех найденых мною в интернете примерах производится при операции submit

CODE (javascript):
скопировать код в буфер обмена
  1. <script type="text/javascript">
  2. $(document).ready(function(){
  3.         $("#reg_form").validate({
  4.                 rules: {
  5.                         login: {
  6.                                 required: true,
  7.                                 minlength: 5,
  8.                                 maxlength: 30
  9.                         },
  10. .
  11. .
  12. .



А можно ли эту валидацию, обязательно плагином jquery, засунуть в функцию которая будет вызываться по событию onclick кнопки
как то так

CODE (javascript):
скопировать код в буфер обмена
  1. function test(){
  2.  
  3. 1. блок валидации
  4.  
  5. 2. блок кода который выполняется если валидация пройдена
  6. }

! Интересует именно валидация с плагином jquery - validation.
shurik_7866 Отправлено: 10 Сентября, 2015 - 19:51:17 • Тема: Есть ли способ создавать динамически web страницы с помощью PHP. • Форум: Вопросы новичков

Ответов: 3
Просмотров: 172
Проблема следующая

Пользователь по нажатию кнопки "Редактировать данные" на WEB странице запускает следующий алгоритм

1. Генерация кода страницы для ввода новых данных
2. Переход на эту страницу для ввода данных
3. Возврат на первоначальную страницу по окончанию ввода новых данных

Возможно ли реализовать данных алгоритм средствами PHP, JavaScript?


Нужно для уменьшения количества html/php файлов хранящихся на сервере.
shurik_7866 Отправлено: 07 Августа, 2015 - 18:28:08 • Тема: Подскажите как разрулить ситуацию плагином jquery - validation • Форум: JavaScript & VBScript

Ответов: 2
Просмотров: 583
если для поля стоит , то пока не заполнить поле, метод post не выполниться
если задать minlength: 5, то не смотря на то что проверка выполняется - выводится сообщение, метод post для формы проходит

Подскажите кто знает - можно ли как то настроить валидацию формы таким образом чтобы метод post выполнялся только если валидацию проходят все поля по всем указанным rules
shurik_7866 Отправлено: 12 Июля, 2015 - 19:06:24 • Тема: Ошибка при отображении на WEB стринице загруженного из БД изображения • Форум: Работа с СУБД

Ответов: 10
Просмотров: 1677
Мелкий пишет:
Сохраните скрипт без BOM.

Перекодировал скрипт из UTF-8 в UTF-8 без BOM и заработало. Теперь скрипт http://os7866[dot]co[dot]ua/scripts/get_[dot][dot][dot]g.php?image_id=1 показивает изображение.

Спасибо.

Проблема решена.

Страниц (4): « 1 [2] 3 4 »
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB