Динамические ссылки в php и mysql

Я хотел бы передавать информацию с одной страницы на другую, используя динамические ссылки. Например, когда человек нажимает

<a href ="glossary.php>A</a>

A будет сохранен в переменную и передан в glossary.php. Где следующий Mysql запрос будет на glossary.php

letter_query = "SELECT * FROM Glossary WHERE Letter =$clickedletter;
letter_id = mysql_query($letter_query) or die(mysql_error);
$row = mysql_fetch_assoc($letter_id);

У меня есть следующая таблица MySQL:

Глоссарий (Glossaryid, Letter, Word, Definition, userid).

Вот пример информации, которая будет храниться: Glossaryid => 01, Letter => B, Word => Ball, Definition => Раунд, с которым люди играют, но некоторым платят, чтобы играть с ним.

У меня есть страница, содержащая HTML со ссылками в алфавитном порядке, то есть A B C D E F G H I и т. Д. Когда человек нажимает на ссылку, я хотел бы отобразить все слова, начинающиеся с нажатой буквы, на странице с именем glossary.php.

2 ответа

Решение

В этой ссылке A не совсем полезная ценность. Это просто отображаемый контент:

<a href ="glossary.php">A</a>

Тем не менее, вы также можете превратить его в полезное значение на самом URL:

<a href ="glossary.php?letter=A">A</a>

Теперь, когда вы загружаете glossary.php страница, значение будет доступно для этой страницы в качестве параметра строки запроса здесь:

$_GET["letter"]

Помещая значения в строку запроса вместо того, чтобы пытаться сохранить их внутренне, это дает дополнительное преимущество повышенной переносимости. Любой может ссылаться на тот же URL с тем же значением с минимальными усилиями, даже с удаленного сайта (где он не имел бы доступа для сохранения значения в вашем коде), пользователи могут даже добавить ссылку в закладки, если захотят.

Примечание. Прежде чем использовать значение непосредственно в запросе SQL, убедитесь, что вы знакомы с внедрением SQL. Этот параметр URL может быть подделан пользователем, чтобы иметь любое значение, которое он хотел бы в нем, включая сам код SQL. Вы должны убедиться, что он был санирован, прежде чем использовать его в запросе к базе данных.

Пытаться:

<a href ="glossary.php?clickedletter=A">A</a>

$clickedletter=$_GET['clickedletter'];
letter_query = "SELECT * FROM Glossary WHERE Letter =$clickedletter;
letter_id = mysql_query($letter_query) or die(mysql_error);
$row = mysql_fetch_assoc($letter_id);
Другие вопросы по тегам