Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 06.06.2011, 17:43
Интересующийся
Отправить личное сообщение для real-man Посмотреть профиль Найти все сообщения от real-man
 
Регистрация: 28.05.2011
Сообщений: 10

помогите новичку с поиском!
Есть база номеров телефонов, храниться в mysql под именем phone, есть скрипт, который по идее должен будет выводить через форму поиска существующие в базе номера телефонов, но как связаться с этой базой не пойму! Помогите пожалуйста и не судите строго, скрипт очень нужен а опыта и знаний не хватает!
Вот ошибки которые выдает при вводе номера :
Warning: include(config.php) [function.include]: failed to open stream: No such file or directory in /home/p/passagir/bezagentov.net/public_html/search/in-search.php on line 3

Warning: include() [function.include]: Failed opening 'config.php' for inclusion (include_path='.:/usr/local/lib/php') in /home/p/passagir/bezagentov.net/public_html/search/in-search.php on line 3

Warning: mysql_query() [function.mysql-query]: Access denied for user 'passagir'@'localhost' (using password: NO) in /home/p/passagir/bezagentov.net/public_html/search/in-search.php on line 5

Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in /home/p/passagir/bezagentov.net/public_html/search/in-search.php on line 5

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/p/passagir/bezagentov.net/public_html/search/in-search.php on
line 6


Вот сам код

файл index.html

<script language="javascript" src="ajax_framework.js"></script>

</head>
<body>
<h2>База телефонов</h2>

<form id="searchForm" name="searchForm" method="post" action="javascript:insertTask();">
<div class="searchInput">
<input name="проверить" type="text" id="searchq" size="30" onkeyup="javascript:searchNameq()"/>
<input type="button" name="submitSearch" id="submitSearch" value="Search" onclick="javascript:searchNameq()"/>
</div>
</form>

<h3>ВВедите номер телефона для проверки</h3>
<div id="msg">Результат</div>
<div id="search-result"></div>

</body>
</html>

файл in-search.php

<?php
include('config.php');
$searchq = $_GET['name'];
$getName = mysql_query('SELECT * FROM USER WHERE name LIKE "%'.addslashes($searchq).'%"');
while ($row = mysql_fetch_array($getName))
echo $row['name'] . '<br/>';
?>

файл ajax_framework.js

/* -------------------------- */
/* XMLHTTPRequest Enable */
/* -------------------------- */
function createObject() {
var request_type;
var browser = navigator.appName;
if(browser == "Microsoft Internet Explorer"){
request_type = new ActiveXObject("Microsoft.XMLHTTP");
} else {
request_type = new XMLHttpRequest();
}
return request_type;
}

var http = createObject();

/* -------------------------- */
/* SEARCH */
/* -------------------------- */
function searchNameq() {
searchq = encodeURI(document.getElementById('searchq').value );
document.getElementById('msg').style.display = "block";
document.getElementById('msg').innerHTML = "Searching for <strong>" + searchq+"";
// Set te random number to add to URL request
nocache = Math.random();
http.open('get', 'in-search.php?name='+searchq+'&nocache = '+nocache);
http.onreadystatechange = searchNameqReply;
http.send(null);
}
function searchNameqReply() {
if(http.readyState == 4){
var response = http.responseText;
document.getElementById('search-result').innerHTML = response;
}
}
Что нужно изменить?
Ответить с цитированием
  #2 (permalink)  
Старый 06.06.2011, 17:54
Кандидат Javascript-наук
Отправить личное сообщение для nyols Посмотреть профиль Найти все сообщения от nyols
 
Регистрация: 16.02.2011
Сообщений: 134

Сообщение от real-man
Warning: include(config.php) [function.include]: failed to open stream: No such file or directory
Подключаемый файл (config.php) не найден.

Сообщение от real-man
Access denied for user 'passagir'@'localhost'
Нет доступа для пользователя "passagir".
Неверный логин скорее всего.

Ну остальные mysql ошибки соответственно из за того что нельзя отправлять запросы так как нет соединения с базой (ошибка выше)
Ответить с цитированием
  #3 (permalink)  
Старый 11.06.2011, 14:52
Интересующийся
Отправить личное сообщение для real-man Посмотреть профиль Найти все сообщения от real-man
 
Регистрация: 28.05.2011
Сообщений: 10

Да, спасибо, все работает, но вот проблема, при вводе данных результат начинает показывать с первых символов, а у меня база очень большая, и соответственно получается большая нагрузка на сервер, в общем страница иногда подвисает, можно ли сделать так, чтоб результат отображался при полном совпадении введенных данных?
Ответить с цитированием
  #4 (permalink)  
Старый 11.06.2011, 14:59
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

А как вы узнаете, полное у вас совпадение или не полное, без запроса к базе?
Ответить с цитированием
  #5 (permalink)  
Старый 11.06.2011, 18:17
Интересующийся
Отправить личное сообщение для real-man Посмотреть профиль Найти все сообщения от real-man
 
Регистрация: 28.05.2011
Сообщений: 10

так что никак?
Ответить с цитированием
  #6 (permalink)  
Старый 11.06.2011, 18:42
х.з
Посмотреть профиль Найти все сообщения от dmitriymar
 
Регистрация: 21.11.2010
Сообщений: 4,588

никак,ограничить только -сравнение начинать(слать запрос к серверу) когда введено пользователем не меньше н символов,и на сравниваемые поля в базе навесить внешние ключи -чтоб поиск был быстрее

Последний раз редактировалось dmitriymar, 11.06.2011 в 18:47.
Ответить с цитированием
  #7 (permalink)  
Старый 11.06.2011, 20:54
Интересующийся
Отправить личное сообщение для real-man Посмотреть профиль Найти все сообщения от real-man
 
Регистрация: 28.05.2011
Сообщений: 10

И как это сделать?
Ответить с цитированием
  #8 (permalink)  
Старый 12.06.2011, 13:01
Интересующийся
Отправить личное сообщение для real-man Посмотреть профиль Найти все сообщения от real-man
 
Регистрация: 28.05.2011
Сообщений: 10

Нужно было всего лишь убрать % % после LIKE и все! Ищет только при полном совпадении
$getName = mysql_query('SELECT * FROM agents WHERE name LIKE "'.addslashes($searchq).'"');
Ответить с цитированием
  #9 (permalink)  
Старый 12.06.2011, 14:07
х.з
Посмотреть профиль Найти все сообщения от dmitriymar
 
Регистрация: 21.11.2010
Сообщений: 4,588

Сообщение от real-man
Нужно было всего лишь убрать % % после LIKE и все! Ищет только при полном совпадении
real-man,
не только-это не решение сервер всё равно будет преегружен постоянно-нагрузку это с него не снимет никак. скрип расчитан что при каждом новом клике на кнопку ищет соответствие . нужно переделывать и скрипт-а иначе при каждом нажатии всё равно идёт вход в базу-соответственно перегрузка сервера
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Выезжающая картинка. помогите плз новичку(( animus Элементы интерфейса 4 22.04.2011 14:31
Помогите новичку serly Общие вопросы Javascript 1 13.04.2011 10:47
Помогите пожалуйста новичку... knyazsergei Общие вопросы Javascript 2 16.06.2010 23:30
Помогите новичку с выпадающим списком interest Элементы интерфейса 5 19.05.2010 13:15
ССЫЛКИ (Помогите новичку) meggen (X)HTML/CSS 8 30.11.2009 10:51