Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: MySql и JavaScript
 
 автор: rafonets   (23.06.2011 в 15:03)   письмо автору
 
 

как узнать что то из СУБД не перезагружая страницу?

  Ответить  
 
 автор: cheops   (23.06.2011 в 15:07)   письмо автору
 
   для: rafonets   (23.06.2011 в 15:03)
 

При помощи AJAX-запроса. Только потребуется вероятно PHP-скрипт, напрямую к СУБД будет сложно обратиться (да, и не безопасно). Если создание AJAX-запроса вызывает трудности, поможем (только нужно больше подробностей).

  Ответить  
 
 автор: rafonets   (23.06.2011 в 15:10)   письмо автору
 
   для: cheops   (23.06.2011 в 15:07)
 

Да в использовании php нет проблем мне просто пример нужно как реализовать это больше ничего

  Ответить  
 
 автор: cheops   (23.06.2011 в 15:57)   письмо автору
 
   для: rafonets   (23.06.2011 в 15:10)
 

Допускается ли использование библиотеки jQuery?

  Ответить  
 
 автор: rafonets   (23.06.2011 в 16:09)   письмо автору
 
   для: cheops   (23.06.2011 в 15:57)
 

Да

  Ответить  
 
 автор: rafonets   (23.06.2011 в 16:09)   письмо автору
 
   для: cheops   (23.06.2011 в 15:57)
 

Да

  Ответить  
 
 автор: cheops   (23.06.2011 в 18:24)   письмо автору
 
   для: rafonets   (23.06.2011 в 16:09)
 

Билиотеку jQuery я думаю вы без труда достанете. Все следующие файлы должны быть в кодировке utf-8. Первый файл index.php содержит ссылку с id='link' на который повешен обработчик click, который в свою очередь асинхронно обращается к скрипту mysql.php, результат которого помещает в div-блок с id='content'
<html> 
  <head> 
    <title>jQuery</title> 
    <script type="text/javascript" src="jquery.js" ></script> 
    <script type="text/javascript"> 
    $(document).ready(function(){ 
      $('#link').bind("click", function(){
        $('#content').load("mysql.php");
      }); 
    }); 
    </script> 
  </head> 
  <body> 
   <a id="link" href='#'>Хочу данные из MySQL</a>
   <div id="content"></div> 
  </body> 
</html>

В файле mysql.php можно разместить все, что вы захотите вывести (тут выводится версия MySQL-сервера)
<?php
  
// Устанавливаем соединение с базой данных
  
require_once("config.php");
  
// Запрос
  
$query "SELECT VERSION()";
  
$ver mysql_query($query);
  if(!
$ver) exit("Ошибка выполнения SQL-запроса");
  echo 
mysql_result($ver0);
?>

  Ответить  
 
 автор: ols   (24.06.2011 в 16:39)   письмо автору
 
   для: cheops   (23.06.2011 в 18:24)
 

cheops, объясните назначение функции load? Обычно в подобных целях использую html(). Но проблема в том что если подгружать контент, через html, то элементы, в загруженном через ajax контенете не загружаются в dom, т.е. если на эти элементы повешены события - эти события невыполняются. load() разрешит эту проблема?

  Ответить  
 
 автор: cheops   (24.06.2011 в 17:59)   письмо автору
 
   для: ols   (24.06.2011 в 16:39)
 

Речь идет о получении данных при поомщи .get(), .post() или .ajax() с последующим выполнением html()? Если да, то load() по сути сокращенный вариант этой операции, выполняет get() запрос с последующим html() размещением данных. Если используется второй параметр, то вместо get() используется post().

>Но проблема в том что если подгружать контент, через html, то элементы, в загруженном через
>ajax контенете не загружаются в dom, т.е. если на эти элементы повешены события - эти события
>невыполняются. load() разрешит эту проблема?
Собственно это уже другой вопрос - как заставить обработчики работать, даже если DOM-элемента пока нет. Вместо bind() (или специализированного метода-обработчика события) испльзуйте live().

PS А вообще под новые вопросы лучше заводить новые темы :)

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования