Как решить такую проблему с Php?
Возникла такая проблема при создании базы даннных с помощью PHP: при поиске пользователя мне нужно сначала вывести только его фамилию, имя и отчество(получив значения из базы), а также сделать ссылку на следующую страницу, где будет предоставленна полная информация о пользователе. Имя, фамилия и отчество выводятся во время цикла, т.к. поиск ведётся по фамилии, а однофамильцев может быть много. Там же даётся ссылка на следующую страницу. В этом же цикле переменной $ID_User присваивается значение ID_User из базы данных, после чего эта переменная должна передаваться на следующую страницу. Но на следующей странице эта переменная не определяется?
Каким образом можно решить эту проблему?
Доброго времени суток! Помогите начинающему программисту PHP))
Возникла такая проблема при создании базы даннных с помощью PHP: при поиске пользователя мне нужно сначала вывести только его фамилию, имя и отчество(получив значения из базы), а также сделать ссылку на следующую страницу, где будет предоставленна полная информация о пользователе. Имя, фамилия и отчество выводятся во время цикла, т.к. поиск ведётся по фамилии, а однофамильцев может быть много. Там же даётся ссылка на следующую страницу. В этом же цикле переменной $ID_User присваивается значение ID_User из базы данных, после чего эта переменная должна передаваться на следующую страницу. Но на следующей странице эта переменная не определяется?
Каким образом можно решить эту проблему?
Так, включаем телепатию и определяем как ты пытаешься передать значение этого ID.
)) написал вопрос не совсем верно! Каким образом можно передать переменную, если значение ей присваивается во время работы цикла.
Блин, какая разница, как её присваивается значение? Передаются они всегда стандартно.
Просто тут надо определиться с терминами: что означает "эта переменная должна передаваться на следующую страницу", и что такое "каким образом можно передать переменную, если значение ей присваивается во время работы цикла"?
Обрати внимание, что PHP - скриптовый язык, выполняющийся на стороне сервера, и жизнь скрипта коротка - запустили, выполнили и забыли. Поэтому, если мои телепатические способности мне не изменяют, "передать на следующую страницу" переменную можно только из браузера.
Если нужена ссылка на след страницу результатов поиска, то я не понимаю зачем передавать ID-пользователя.. чтобы начиная с него потом выводить следующую порцию данных? Если так, то это неправильно потому, что данные в БД неупорядочены.. тут нужно тогда насильно указывать поле сортировки в ORDER BY, а при запросе очередной страницы результатов поиска ограничивать выборку при помощи LIMIT x,y (это в MySQL).
Почему ваша переменная не передается на др. страницу тоже предположить сложно - смотря каким способом передаете - GET, POST, сессия, куки? Если 1 или 2, то искать значение переменной нужно в $_GET['id_user'] и $_POST['is_user'] соответственно.
После цикла подставлять данное значение в ссылку или в <input type="hidden">
Может быть вместо гадания подождать пока нам подскажут как она передаёться GET, POST или ещё как то?
imho парняга ищет компас до сессий.
if (!$Family )
{
echo "Вы не ввели Фамилию для поиска. Пожалуйста вернитесь обратно и введите значение.";
exit;
}
$Family = addslashes ($Family);
$db = mssql_pconnect ("Имя_MSSQL_сервера");
if (!$db)
{
echo "Ошибка: Невозможно подключиться к базе данных";
exit;
}
mssql_select_db("Personal");
$query ="SELECT Personal_User.ID_User,Personal_User.Family, Personal_User.Name, Personal_User.Father_Name, Personal_User.Work_Phone
FROM Personal_User
WHERE Personal_User.Family='".$Family."'" ;
$result = mssql_query ($query);
$num_results = mssql_num_rows ($result);
echo "
Количество сотрудников, удовлетворяющих условию запроса " .$num_results."</p>";
for($i=0; $i < $num_results; $i++)
{
$row = mssql_fetch_array($result);
echo "
".($i+1).". ";
echo htmlspecialchars (stripslashes ($row["Family"]));
echo htmlspecialchars (stripslashes ($row["Name"]));
echo htmlspecialchars (stripslashes ($row["Father_Name"]));
echo ". Телефон: ";
echo htmlspecialchars (stripslashes ($row["Work_Phone"]));
$ID_user = stripslashes ($row["ID_User"]);
echo " Подробнее";
}
Насколько я понял из того, что мне ответили, я всё сделал не так как надо, но ведь я ещё только пытаюсь научиться.))
На сколько я понимаю, методами GET или POST переменную мне не удастся передать, т.к. у меня значение постоянно изменяется.
Вопрос. Ты передаёшь значение и оно у тебя в ходе передачи меняеться?
Вопрос. Ты передаёшь значение и оно у тебя в ходе передачи меняеться?
В ходе передачи оно не меняется, оно меняется во время работы цикла! При поиске по фамилии у меня могут быть однофамильцы, соответственно будет работать цикл, и переменная $ID_User будет хотябы 1 раз изменять своё значение.
В ходе передачи оно не меняется, оно меняется во время работы цикла! При поиске по фамилии у меня могут быть однофамильцы, соответственно будет работать цикл, и переменная $ID_User будет хотябы 1 раз изменять своё значение.
Либо я не догоняю, либо...
Так сойдёт?
В ходе передачи оно не меняется, оно меняется во время работы цикла! При поиске по фамилии у меня могут быть однофамильцы, соответственно будет работать цикл, и переменная $ID_User будет хотябы 1 раз изменять своё значение.
Обоснуй, с какого кипариса у тебя будет меняться набор записей ВЫБРАННЫЙ ИЗ БД? Такого не бывает.
Обоснуй, с какого кипариса у тебя будет меняться набор записей ВЫБРАННЫЙ ИЗ БД? Такого не бывает.
Ты на к коду присмотрись:). У него ссылка без передачи id другому. Все записи получаються одиноковыми:))). Пацан так и не разобрался, что такое GET.
echo " Подробнее";
А в info_user.php достаем значение переменной из $_GET['id_user'] и подставляем в запрос типа 'SELECT * FROM Personal_User WHERE id_user='.$_GET['id_user'];
Ты на к коду присмотрись:). У него ссылка без передачи id другому. Все записи получаються одиноковыми:))). Пацан так и не разобрался, что такое GET.
Я не понимаю именно то, что я спросил, конечно я не до конца всё изучил по этим методам)) Передыдущая версия страницы была несколько другая, по запросу выдавалась полностью информация, удовлетворяющая условию, но вот начальнику типа так не нравится!
Может быть я опять не так понял, но мне кажется что ссылка "Подробнее" должна открывать полную информацию о пользователе. Если так, то:
echo " Подробнее";
А в info_user.php достаем значение переменной из $_GET['id_user'] и подставляем в запрос типа 'SELECT * FROM Personal_User WHERE id_user='.$_GET['id_user'];
Вот что-то вроде этого я и хотел увидеть, спасибо огромное, а то сам бы наверно ещё долго сидел! Спасибо всем за помощь юному ламеру))
Я не понимаю именно то, что я спросил, конечно я не до конца всё изучил по этим методам)) Передыдущая версия страницы была несколько другая, по запросу выдавалась полностью информация, удовлетворяющая условию, но вот начальнику типа так не нравится!
Не, довольно оригинально, спросил то - не зная что:).
2#define Читай выше. Думаю там тоже понятно.:)
2#define Читай выше. Думаю там тоже понятно.
Мне понятно. Только пока когда я ответ писал - твоего поста еще не было. А ты что обиделся что твоей ответ не помог автору поста?:)
Мне понятно. Только пока когда я ответ писал - твоего поста еще не было. А ты что обиделся что твоей ответ не помог автору поста?:)
Да не, я не про то.
1. я не посмотре на разницу времени (хотя там 13 минут).
2. Самое главное, что помогли и не важно кто это сделал, я за рейтингом не гонюсь:).