|
|
|
(PHP) Нажатие на ссылку и открывается только одна запись из БД!
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, здесь я человек новый. И хотелось бы задать вам такой вопрос, ответ на который я надеюсь получить очень скоро... В общем, нужно, чтобы при нажатии на одну ссылку, выбиралась одна запись из базы именно для этой ссылки , точно также и для других ссылок, вторая ссылка открывает вторую запись. Открыть базу и создать SQL-запрос для меня не проблема. Я не могу написать код для ссылки. Как же это делается? Никак не могу догнать... Скажем, если нажать на link1, то открывается первая запись из базы, если нажать на link2, то открывается вторая запись из базы, и т.д. Будьте добры написать код, пожалуйста! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2006, 09:44 |
|
||
|
(PHP) Нажатие на ссылку и открывается только одна запись из БД!
|
|||
|---|---|---|---|
|
#18+
Используйте методы GET или (менее удобно, но позволяет делать более длинные запросы) POST. Объясняю вкратце работу с методом GET, причём для PHP, язык программирования вы не уточнили. Если вы делаете ссылку вида <a href='/script.php?var1=12'>12</a>, то вы получаете ссылку, по нажатии на которую открывается script.php, причём в суперглобальном массиве $_GET появляется элемент var1, и $_GET['var1']=12. Соответственно, таким вот манером и передавайте id записи, которую нужно выбирать. Два важных момента. Во-первых, таким образом, перебирая запросами диаппазон id можно вытащить содержимое всех их. Для новичков это бывает неожиданностью и в некоторых случаях нужны какие-то ограничения. Во-вторых, передавая переменную с помощью GET, вы никак не можете её защитить, никто не помешает пользователю запросить, к примеру, "/script.php?id=1 OR 1=1", и получить все записи, а не одну. Можно составить и более вредоносный запрос. Потому к полученным через GET данным следует относиться критически. В случае передачи численного id, обычно достаточно $id = intval($_GET['id']); и дальнейшей работы с переменной $id. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2006, 10:01 |
|
||
|
(PHP) Нажатие на ссылку и открывается только одна запись из БД!
|
|||
|---|---|---|---|
|
#18+
Спасибо большое за помощь. Вроде все должно было получится, только... В общем, при нажатии link1 открывается первая запись, а вот при нажатии link2, почему-то открывается снова первая запись. Что нужно дописать, чтобы открывалась вторая, третья запись? if ($_GET['var1']="1") { $sql = "SELECT * FROM $dtable WHERE `id`='1'"; } if ($_GET['var2']="2") { $sql = "SELECT * FROM $dtable WHERE `id`='2'"; } if ($_GET['var3']="3") { $sql = "SELECT * FROM $dtable WHERE `id`='3'"; } ... echo "Запись появилась!!!"; else { echo "Облом!!!"; } Заранее спасибо... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2006, 11:45 |
|
||
|
(PHP) Нажатие на ссылку и открывается только одна запись из БД!
|
|||
|---|---|---|---|
|
#18+
линки www.mysite.com/index.php?var=1 www.mysite.com/index.php?var=2 ..... запрос $sql = "SELECT * FROM $dtable WHERE `id`='".$_GET['var']."'"; _______________ Felix ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2006, 13:29 |
|
||
|
(PHP) Нажатие на ссылку и открывается только одна запись из БД!
|
|||
|---|---|---|---|
|
#18+
Спасибо большое! У меня все получилось!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2006, 14:59 |
|
||
|
(PHP) Нажатие на ссылку и открывается только одна запись из БД!
|
|||
|---|---|---|---|
|
#18+
наздоровье, только не забывайте о том что было сказано выше. что будет если кто то напишет www.mysite.com/index.php?var=1 or 1=1 удачи _______________ Felix ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2006, 15:07 |
|
||
|
(PHP) Нажатие на ссылку и открывается только одна запись из БД!
|
|||
|---|---|---|---|
|
#18+
не забывайте делать для $_GET['var'] удаление всех не цифровых символов Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.01.2006, 15:09 |
|
||
|
(PHP) Нажатие на ссылку и открывается только одна запись из БД!
|
|||
|---|---|---|---|
|
#18+
Кстати, а кто как удаляет нецифры из запросов - просто интересно - я всегда делал так: Код: plaintext Николай aka Motodor третье (кажется из той же оперы что и я) А как правильней и быстрей будет? Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.01.2006, 00:08 |
|
||
|
|

start [/forum/topic.php?fid=23&msg=33482900&tid=1476964]: |
0ms |
get settings: |
7ms |
get forum list: |
12ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
74ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
44ms |
get tp. blocked users: |
1ms |
| others: | 237ms |
| total: | 390ms |

| 0 / 0 |
