Я конечно понимаю что решение есть, но я его вот уже второй день самостоятельно найти не могу, так ВОТ:
(Script) есть форма, на ней input type="text" после ввода текста, и нажатии кнопки (type="submit") Используется метод POST. Открывается php страница, на которой я хочу видеть строки из базы данных в которых и встречается данная глобальная переменная. В общем-то поиск. Облазил весь интернет - ничего не нашел (. Помогите кодом. К базе я подключаюсь в этом файле, с этим проблем нет - самая главная проблема в переменной POST и соответственно sql запрос на поиск (select * from `t1` where `string1` = '$_POST('name')') - некорректен ??????
У МЕНЯ ОГРОМНАЯ ПРОБЛЕМА С СИНТАКСИСОМ.
Спустя 12 минут, 42 секунды (20.06.2011 - 19:49) SoMeOnE написал(а):
pavel24071988
Код покажите. Без этого наврядли Вам здесь кто то поможет...
Код покажите. Без этого наврядли Вам здесь кто то поможет...
Спустя 8 минут, 34 секунды (20.06.2011 - 19:58) pavel24071988 написал(а):
Цитата (SoMeOnE @ 20.06.2011 - 16:49) |
pavel24071988 Код покажите. Без этого наврядли Вам здесь кто то поможет... |
Скрипт :
<form name="form1" method="post" action="http://webo.h16.ru/scriptsearch.php">
Введите имя:<br />
<label>
<input type="text" name="string1" id="textfield">
</label>
<br />
<input name="" type="submit" value="Отправить"/>
</form>
// Подключение к СУБД (Здесь соответственно и парои там всякие - тут все работает)
$link = mysql_connect(HOST,USER,PASS) or die (mysql_error());
mysql_select_db(DB, $link);
mysql_query ("SET NAMES utf8");
mysql_query ("set character_set_client='utf8'");
mysql_query ("set character_set_results='utf8'");
mysql_query ("set collation_connection='utf8_general_ci'");
$sql = "SELECT * FROM `table` where `pole1` [b]='".$_POST['name']."'");[/b]
// Скармливаем наш запрос MySQL
$result = mysql_query($sql) or die(mysql_error() ."<br/>". $sql);
echo '$result';
?>
Проблема с синтаксисом где - то здесь, но где ? Или тат вообще все неправильно?
Спустя 2 минуты, 58 секунд (20.06.2011 - 20:01) SoMeOnE написал(а):
pavel24071988
Ни посчитайте за назойливость, но лучше оформить код тегами php. Что бы синтаксис подсветился. Так легче разобраться.
Ни посчитайте за назойливость, но лучше оформить код тегами php. Что бы синтаксис подсветился. Так легче разобраться.
Спустя 8 минут, 19 секунд (20.06.2011 - 20:09) SoMeOnE написал(а):
pavel24071988
И где открывающая скобка?
Или же лучше убрать просто закрывающую.
'".$_POST['name']."'
'{$_POST['name']}'
И где открывающая скобка?
Или же лучше убрать просто закрывающую.
Спустя 9 минут, 33 секунды (20.06.2011 - 20:18) Админ написал(а):
[b]='".$_POST['name']."'");[/b]
это не понятно
А чё не работает ?
какие ошибки ?
просто в переменную result возвращает буль либо true либо false
Спустя 4 минуты, 19 секунд (20.06.2011 - 20:23) pavel24071988 написал(а):
Когда писал на форуме
Вот так наверное оончательно правильно
$sql = "SELECT * FROM `table` where `pole1`='".$_POST['name']."'"; ???
Вот так наверное оончательно правильно
$sql = "SELECT * FROM `table` where `pole1`='".$_POST['name']."'"; ???
Спустя 1 минута, 16 секунд (20.06.2011 - 20:24) Админ написал(а):
$sql = "SELECT * FROM `table` where `pole1`='".$_POST['name']."'";
правильной дорогой идёшь товарищ
Спустя 2 минуты, 12 секунд (20.06.2011 - 20:26) SoMeOnE написал(а):
$sql = "SELECT * FROM `table` where `pole1`='{$_POST['name']}'";
Так вроде бы лучше. Поменьше кавычек. Более читабельно.
Спустя 1 час, 29 минут, 26 секунд (20.06.2011 - 21:56) pavel24071988 написал(а):
(то что я хотел и пытался описать)
Вообщем ребят, кому интересно - решение проблемы :
Без html скрипта
Все получилось, да ещё и с цыклом !!!!!!! Круть ваще....
Вообщем ребят, кому интересно - решение проблемы :
Без html скрипта
<?php
// Константы для подключения к СУБД
define("HOST","...");
define("USER","...");
define("PASS","...");
define("DB","...");
// Подключение к СУБД
$link = mysql_connect(HOST,USER,PASS) or die (mysql_error());
// Выбираем базу данных
mysql_select_db(DB, $link);
//Устанавливаем кодировку UTF8
mysql_query ("SET NAMES utf8");
mysql_query ("set character_set_client='utf8'");
mysql_query ("set character_set_results='utf8'");
mysql_query ("set collation_connection='utf8_general_ci'");
// Формируем строку для запроса к нашей базе данных
// Не забывайте обрамлять имена таблиц и полей обратными кавычками `TABLE`
// Скармливаем наш запрос MySQL
$result = mysql_query("SELECT * FROM con WHERE s='".$_POST['test']."'"); // Запрос к таблице нужной (сам составь)
/* Обратите внимание на конструкцию
or die(mysql_error() ."<br/>". $sql) она Вам поможет в случае ошибки
в Вашем SQL запросле или отсутствия соединения с Mysql
Выводим данные из таблицы в цикле WHILE(), не вкоем случае не используйте
DO WHILE() эта конструкция предназначена совсем для других действий
*/
// Рисуем табличку
$table = "<table border=3 width=30% align=center>\n";
while ($row = mysql_fetch_assoc($result))
{
/* Прошу обратить внимание на функцию MYSQL_FETCH_ASSOC()
Выбрана она не случайно, данная функция возвратит ассоциативный
массив с которым будем работать.
Многие делают ошибку в плане оптимизации и использую функцию
MYSQL_FETCH_ARRAY() данная функция вернет два массива,
один ассоциативный другой индексный тем самым мы увеличим потрябляемую
память скриптом.
*/
$table .= "<tr>\n";
$table .= "<td>".$row['sum1']."</td>\n";
$table .= "<td>".$row['sum2']."</td>\n";
$table .= "<td>".$row['sum3']."</td>\n";
$table .= "</tr>\n";
}
$table .= "</table>\n";
// Выводим заполненую таблицу на экран
echo $table;
?>
Все получилось, да ещё и с цыклом !!!!!!! Круть ваще....