Intereting Posts
Eclipse Kepler – завершение PHP-кода не работает API Twitter – 406 Неприемлемый ответ не может нажимать элементы, отобранные другой страницей, используя ajax – $ (document) .on не работает Что означает поставщик в структуре веб-файла? корзина для покупок Session php При назначении массива PHP массиву JS каждый алфавит значений массива делится Laravel 5.3 – Как регистрировать все запросы на странице? Сократить количество страниц в разбивке на страницы Лучший способ гарантировать правильные значения параметров Ajax-вызовов Каков правильный и безопасный / безопасный способ входа пользователя в систему? печенье? сессия? PHP && MYSQL Используйте Paypal Pro вместо Paypal Express – Omnipay для Laravel Joomla 3.2 Сгруппированный список Пользовательский список полей не имеет значения SELECTED Загрузите программу с помощью PHP в поле HP-UX Как я могу заставить этот скрипт работать в WordPress? PHP Сортировка ближайших координат

Получить данные из таблицы базы данных MySQL по определенному полю в URL-адресе

Im новое для PHP MySQL. Я разрабатываю сайт для песенников.

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

Когда пользователь нажимает на алфавит в меню, он направляет на эту страницу site/publicsearch.php?browse=a

Это база данных:

 | ID | TITLE | ARTIST | CATEGORY | ALPHABET | +----------------------------------------------------+ | 1 | Amazing love | XXXXXX | Love | a | | 2 | Above all | XXXXXX | Worship | a | | 3 | BXXXX | XXXXXX | Love | b | | 4 | BXXXX | XXXXXX | Worship | b | 

Я вытаскиваю выше таблицу базы данных следующим образом: она работает нормально.

  <?php $servername = "localhost"; $username = "xxxxxxx"; $password = "xxxxxxxx"; $db_name = "xxxxxxxxxxx"; // Create connection $conn = new mysqli($servername, $username, $password, $db_name); // Check connection if ($conn->connect_error) { die("Connection failed: " . $conn->connect_error); echo "Connected successfully"; exit(); } // Attempt select query execution $sql = "SELECT * FROM lyrics_a"; if($result = mysqli_query($conn, $sql)){ if(mysqli_num_rows($result) > 0){ echo "<table class='table'>"; echo "<tr>"; echo "<th>#</th>"; echo "<th>Title</th>"; echo "<th>artist</th>"; echo "<th>cateogry</th>"; echo "</tr>"; while($row = mysqli_fetch_array($result)){ echo "<tr>"; echo "<td>" . $row['id'] . "</td>"; echo "<td> <a href=publicsong.php?id=".$row['id'] . ">" . $row['eng_title'] . "</a> " . $row['tel_title'] . " </td>"; echo "<td>" . $row['artist'] . "</td>"; echo "<td>" . $row['category'] . "</td>"; echo "</tr>"; } echo "</table>"; // Close result set mysqli_free_result($result); } else{ echo "No records matching your query were found."; } } else{ echo "ERROR: Could not able to execute $sql. " . mysqli_error($link); } // Close connection mysqli_close($link); ?> 

Мне нужны отдельные таблицы в алфавитном порядке:

 Alphabet "a" table results `site/publicsearch.php?browse=a` | ID | TITLE | ARTIST | CATEGORY | ALPHABET | +----------------------------------------------------+ | 1 | Amazing love | XXXXXX | Love | a | | 2 | Above all | XXXXXX | Worship | a | Alphabet "b" table results `site/publicsearch.php?browse=b` | ID | TITLE | ARTIST | CATEGORY | ALPHABET | +----------------------------------------------------+ | 3 | BXXXX | XXXXXX | Love | b | | 4 | BXXXX | XXXXXX | Worship | b | 

Я попробовал, что приведенный ниже код не работает.

 <?php $servername = "localhost"; $username = "xxxxxx"; $password = "xxxxxxx"; $db_name = "xxxxxxxxx"; // Create connection $conn = new mysqli($servername, $username, $password, $db_name); // Check connection if ($conn->connect_error){ die("Connection failed: " . $conn->connect_error); } $alphabet = $_GET['alphabet']; $id = mysqli_real_escape_string($conn,$id); $query = "SELECT * FROM `lyrics` WHERE `alphabet`='" . $alphabet . "'"; $result = mysqli_query($conn,$query); while($row = mysqli_fetch_array($result)) { echo "<br><br>"; echo $row['id']; echo $row['title']; echo $row['lyrics']; echo $row['alphabet']; } ?> 

Я новичок. Пожалуйста помоги. Спасибо.

 $alphabet = $_GET['alphabet']; $id = mysqli_real_escape_string($conn,$id); $query = "SELECT * FROM `lyrics` WHERE `alphabet`='" . $alphabet . "'"; 

заменить:

 $alphabet = mysqli_real_escape_string($conn,$_GET['browse']); $query = "SELECT * FROM `lyrics` WHERE `alphabet`= '" . $alphabet . "' "; 

Вы предлагаете следующий URL: publicsearch.php?browse=a

Но в вашем скрипте вы используете параметр запроса $_GET['alphabet']

Кроме того, вам не нужен отдельный alphabet столбца в вашей базе данных, вы можете использовать LIKE SQL :

 $letter = $_GET['browse']; $sql = "SELECT * FROM `lyrics` WHERE title LIKE '{$letter}%'"