PHP . SU
Программирование на PHP, MySQL и другие веб-технологии
Без описания
Поиск в теме | Версия для печати
4ester
Отправлено: 18 Ноября, 2009 - 20:57:10
Новичок
Покинул форум
Сообщений всего: 7
Дата рег-ции: Нояб. 2009
Помог: 0 раз(а)
Вообщем нашёл скрипт поиска по базам MySQL и переделал его под себя. Однако, вместо результата поиска
выводится пустая страничка. Не могу понять где ошибка (у меня mysql 5.0.67; php 5.2.9; apache 2.2.10)
Вот собственно скрипты:
formp.php
PHP:
скопировать код в буфер обмена
< form action= "poiskmag.php" method= "post" >
Поиск< br>< input type= "text" name= "dan" size= "60" value= "" >
< input type= "submit" name= "submit" value= "Искать" >
< input type= "reset" name= "reset" value= "Очистить" >
</ form>
poiskmag.php
PHP:
скопировать код в буфер обмена
<?PHP
$link = mysql_connect ( "localhost" , "root" , "16061994" ) or
die ( "Не соединилось!!!" ) ;
$query = "SELECT opis, price FROM obiva WHERE '%d an%'" ;
print "<table>\n " ;
print "\t <tr>\n " ;
for ( $i = 1 ; $i <= 4 ; $i ++ ) { print "\t \t <td>$line [$i ]</td>\n " ; }
print "\t </tr>\n " ;
}
print "</table>\n " ;
?>
EGORR
Отправлено: 18 Ноября, 2009 - 21:10:14
Новичок
Покинул форум
Сообщений всего: 43
Дата рег-ции: Нояб. 2009
Откуда: Ярославль
Помог: 0 раз(а)
Так ты не забираешь присланное значение.
Обработчик должен получить $_POST['dan']
PS Для краткости не привожу проверку полученного.(Отредактировано автором: 18 Ноября, 2009 - 21:21:28)
4ester
Отправлено: 18 Ноября, 2009 - 21:54:09
Новичок
Покинул форум
Сообщений всего: 7
Дата рег-ции: Нояб. 2009
Помог: 0 раз(а)
EGORR пишет: Так ты не забираешь присланное значение.
Обработчик должен получить $_POST['dan']
PS Для краткости не привожу проверку полученного.
Пишет что запрос ошибочный
(Добавление)
EGORR пишет: Так ты не забираешь присланное значение.
Обработчик должен получить $_POST['dan']
PS Для краткости не привожу проверку полученного.
хотя сейчас вместо WHERE dan написал Where opis
и получился результат
спасибо
4ester
Отправлено: 18 Ноября, 2009 - 22:42:28
Новичок
Покинул форум
Сообщений всего: 7
Дата рег-ции: Нояб. 2009
Помог: 0 раз(а)
EGORR пишет: 4ester пишет: хотя сейчас вместо WHERE dan написал Where opis
и получился результат
Сорри... Я же не знал что у тебя в таблице. Так. схематично описал...
(Добавление)
Кстати, я надеюсь эта строка здесь только для примера?
Если нет, то это весьма неосмотрительно.
ой
(Добавление)
уже поменял
(Добавление)
EGORR не могли ли Вы написать что означает этот массив?
EGORR
Отправлено: 19 Ноября, 2009 - 09:41:26
Новичок
Покинул форум
Сообщений всего: 43
Дата рег-ции: Нояб. 2009
Откуда: Ярославль
Помог: 0 раз(а)
mysql_fetch_array - это массив с результатом выборки.
Для просмотра массивов заведи себе небольшую функцию. Как эта например.
PHP:
скопировать код в буфер обмена
function Pre( $Arr )
{
echo "<span style=\" font-size: 1.5em;color: green;\" >Items - " . count ( $Arr ) . "</span><br>" ; echo "<pre style=\" font-size: 1.5em;\" >" ;
echo "</pre>" ;
}
Просмотришь ею, и многое станет понятней.
Я бы этот кусок написал бы так
PHP:
скопировать код в буфер обмена
$start = "<table>\n <tr>\n "
$out = "<td>Пусто...</td>" ;
$end = "</tr>\n </table>\n "
{
foreach ( $line as $data )
{
$out .= "<td>Описалово - $data ['opis'] Стоимость - $data ['price']</td>" ;
}
}
$outData = $start . $out . $end ;
echo $outData
;
4ester
Отправлено: 19 Ноября, 2009 - 14:20:14
Новичок
Покинул форум
Сообщений всего: 7
Дата рег-ции: Нояб. 2009
Помог: 0 раз(а)
EGORR пишет: mysql_fetch_array - это массив с результатом выборки.
Для просмотра массивов заведи себе небольшую функцию. Как эта например.
PHP:
скопировать код в буфер обмена
function Pre( $Arr )
{
echo "<span style=\" font-size: 1.5em;color: green;\" >Items - " . count ( $Arr ) . "</span><br>" ; echo "<pre style=\" font-size: 1.5em;\" >" ;
echo "</pre>" ;
}
Просмотришь ею, и многое станет понятней.
Я бы этот кусок написал бы так
PHP:
скопировать код в буфер обмена
$start = "<table>\n <tr>\n "
$out = "<td>Пусто...</td>" ;
$end = "</tr>\n </table>\n "
{
foreach ( $line as $data )
{
$out .= "<td>Описалово - $data ['opis'] Стоимость - $data ['price']</td>" ;
}
}
$outData = $start . $out . $end ;
echo $outData
;
Обратно выводит пустую страницу
Вот код
PHP:
скопировать код в буфер обмена
<?PHP
/* Соединение, выбор БД */
/* Выполнение SQL запроса */
if ( isset ( $_REQUEST [ 'dan' ] ) ) {
$dan = $_REQUEST [ 'dan' ] ;
$query = "SELECT * FROM obiva WHERE opis LIKE '%$dan %'" ;
}
echo $query ;
echo $result ;
/* Печать результатов в HTML */
$start = "<table>\n <tr>\n " ;
$out = "<td>Пусто...</td>" ;
$end = "</tr>\n </table>\n " ;
{
foreach ( $line as $data )
{
$out .= "<td>Описание - $data ['opis'] Стоимость - $data ['price']</td>" ;
}
}
$outData = $start . $out . $end ;
echo $outData ;
}
echo $line ;
echo "</table>\n " ;
/* Освобождение памяти, занятой результатом запроса */
/* Закрытие соединения */
?>
EGORR
Отправлено: 19 Ноября, 2009 - 16:16:49
Новичок
Покинул форум
Сообщений всего: 43
Дата рег-ции: Нояб. 2009
Откуда: Ярославль
Помог: 0 раз(а)
Мелкий совершенно прав.
Я был невнимателен.
Вот так будет лучше
PHP:
скопировать код в буфер обмена
if ( isset ( $_REQUEST [ 'dan' ] ) ) {
$dan = $_REQUEST [ 'dan' ] ;
//-------------------//
$query = "SELECT opis, price FROM obiva WHERE opis LIKE '%$dan %'" ;
//-------------------//
$outData = "<p>Ничего не найдено</p>" ;
if ( $line )
{
$out = "<table>\n " ;
$end = "</table>\n " ;
{
$out .= "<tr>\n <td>Описание - " . $row [ 0 ] . " Стоимость - " . $row [ 1 ] . "</td>\n </tr>\n " ;
}
$outData = $out . $end ;
}
}
echo $outData ;
(Отредактировано автором: 19 Ноября, 2009 - 16:19:28)
4ester
Отправлено: 19 Ноября, 2009 - 18:25:02
Новичок
Покинул форум
Сообщений всего: 7
Дата рег-ции: Нояб. 2009
Помог: 0 раз(а)
EGORR пишет: Мелкий совершенно прав.
Я был невнимателен.
Вот так будет лучше
PHP:
скопировать код в буфер обмена
if ( isset ( $_REQUEST [ 'dan' ] ) ) {
$dan = $_REQUEST [ 'dan' ] ;
//-------------------//
$query = "SELECT opis, price FROM obiva WHERE opis LIKE '%$dan %'" ;
//-------------------//
$outData = "<p>Ничего не найдено</p>" ;
if ( $line )
{
$out = "<table>\n " ;
$end = "</table>\n " ;
{
$out .= "<tr>\n <td>Описание - " . $row [ 0 ] . " Стоимость - " . $row [ 1 ] . "</td>\n </tr>\n " ;
}
$outData = $out . $end ;
}
}
echo $outData ;
Обратно пустая страница
Вот код
PHP:
скопировать код в буфер обмена
<?PHP
if ( isset ( $_REQUEST [ 'dan' ] ) ) {
$dan = $_REQUEST [ 'dan' ] ;
//-------------------//
$query = "SELECT opis, price FROM obiva WHERE opis LIKE '%$dan %'" ;
//-------------------//
$outData = "<p>Ничего не найдено</p>" ;
if ( $line )
{
$out = "<table>\n " ;
$end = "</table>\n " ;
{
$out .= "<tr>\n <td>Описание - " . $row [ 0 ] . " Стоимость - " . $row [ 1 ] . "</td>\n </tr>\n " ;
}
$outData = $out . $end ;
}
}
echo $outData ;
?>
Поиск в теме | Версия для печати
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« SQL и Архитектура БД »
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
Powered by ExBB FM 1.0 RC1. InvisionExBB