Nano Hash - криптовалюты, майнинг, программирование

Отображение данных имени на основе первой буквы

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

Прямо сейчас я застрял на наилучшем способе, чтобы PHP зашел в таблицу и просмотрел все «Имена», которые начинаются с выбранной буквы, и вывел First_Name и Last_Name.

Пример: я выбираю «P», потому что меня зовут «Pietro Aretino», затем он дает мне вывод каждого участника, чье First_Name начинается с «P», а также включает их фамилию. Я нахожу свое имя в списке «Пьетро Аретино», выбираю его, затем он также отправляет в базу данных мою информацию для входа в систему, которая, как я полагаю, будет моим именем/фамилией и отметкой времени.

Но я отвлекся, потому что прямо сейчас я не уверен, как заставить PHP выполнять этот поиск по имени, а затем выводить список

Прямо сейчас у меня есть каждая кнопка от A до Z, помеченная военным алфавитом (альфа, браво и т. Д.), Когда выбрана «А», она запускает функцию «альфа» внизу. Попытка выяснить, что поместить в функции «альфа», «браво», «чарли» и т. Д., Которые заставят PHP обращаться к базе данных, выполнять поиск и выводить списки.

... вот что у меня есть до сих пор:

<?php
$servername = "localhost";
$username = "*********";
$password = "*********";
$dbname = "********** ";

//Create Connection
global $CONNECTION;
$CONNECTION = new mysqli($servername, $username, $password, $dbname);
//Check Connection
if ($CONNECTION->connect_error) {
    die("Connection To MySQL Database Failed With the Following Error: " . $connection->connect_error);
}
global $SQL; 
$SQL = "SELECT first_name, last_name FROM ppSD_member_data";
global $RESULT; 
$RESULT = $CONNECTION->query($SQL);
if (isset($_POST['alpha'])) {
    alpha();
}
if (isset($_POST['bravo'])) {
    bravo();
}
if (isset($_POST['charlie'])) {
    charlie();
}
if (isset($_POST['delta'])) {
    delta();
}
if (isset($_POST['eko'])) {
    eko();
}
if (isset($_POST['foxtrot'])) {
    foxtrot();
}
if (isset($_POST['golf'])) {
    golf();
}
if (isset($_POST['hotel'])) {
    hotel();
}
if (isset($_POST['india'])) {
    india();
}
if (isset($_POST['juliet'])) {
    juliet();
}
if (isset($_POST['kilo'])) {
    kilo();
}
if (isset($_POST['lima'])) {
    lima();
}
if (isset($_POST['mike'])) {
    mike();
}
if (isset($_POST['november'])) {
    november();
}
if (isset($_POST['oscar'])) {
    oscar();
}
if (isset($_POST['papa'])) {
    papa();
}
if (isset($_POST['quebec'])) {
    quebec();
}
if (isset($_POST['romeo'])) {
    romeo();
}
if (isset($_POST['sierra'])) {
    sierra();
}
if (isset($_POST['tango'])) {
    tango();
}
if (isset($_POST['uniform'])) {
    uniform();
}
if (isset($_POST['victor'])) {
    victor();
}
if (isset($_POST['whiskey'])) {
    whiskey();
}
if (isset($_POST['xray'])) {
    xray();
}
if (isset($_POST['yankee'])) {
    yankee();
}
if (isset($_POST['zulu'])) {
    zulu();
}
echo <<<_END
<html>
    <head>
    <title>The Yard Members</title>
    </head>
<body>
<div align="center">
<h3>Please Select The Letter of Your First Name</h3>
<form method="post" action="display_members.php">
<input type="submit" name="alpha" id="name" value="A" style="height:75px; width:75px" />
<input type="submit" name="bravo" id="name" value="B" style="height:75px; width:75px" />
<input type="submit" name="charlie" id="name" value="C" style="height:75px; width:75px" />
<input type="submit" name="name" id="name" value="D" style="height:75px; width:75px" />
<br>
<input type="submit" value="E" style="height:75px; width:75px" />
<input type="submit" value="F" style="height:75px; width:75px" />
<input type="submit" value="G" style="height:75px; width:75px" />
<input type="submit" value="H" style="height:75px; width:75px" />
<br>
<input type="submit" value="I" style="height:75px; width:75px" />
<input type="submit" value="J" style="height:75px; width:75px" />
<input type="submit" value="K" style="height:75px; width:75px" />
<input type="submit" value="L" style="height:75px; width:75px" />
<br>
<input type="submit" value="M" style="height:75px; width:75px" />
<input type="submit" value="N" style="height:75px; width:75px" />
<input type="submit" value="O" style="height:75px; width:75px" />
<input type="submit" value="P" style="height:75px; width:75px" />
<br>
<input type="submit" value="Q" style="height:75px; width:75px" />
<input type="submit" value="R" style="height:75px; width:75px" />
<input type="submit" value="S" style="height:75px; width:75px" />
<input type="submit" value="T" style="height:75px; width:75px" />
<br>
<input type="submit" value="U" style="height:75px; width:75px" />
<input type="submit" value="V" style="height:75px; width:75px" />
<input type="submit" value="W" style="height:75px; width:75px" />
<input type="submit" value="X" style="height:75px; width:75px" />
<br>
<input type="submit" value="Y" style="height:75px; width:75px" />
<input type="submit" value="Z" style="height:75px; width:75px" />
</form>
</body>
</div>
</html>
_END;
function alpha() {
#while($row = $RESULT->fetch_assoc()) {
    echo "This Is The Alpha Function";
    }
function bravo() {
    echo "This is the Bravo Function";
}
function charlie() {
    echo "This is the charlie function";
}
function charlie() {
    echo "This is the charlie function";
}
function charlie() {
    echo "This is the charlie function";
}
function charlie() {
    echo "This is the charlie function";
}
function charlie() {
    echo "This is the charlie function";
}
function charlie() {
    echo "This is the charlie function";
}
function charlie() {
    echo "This is the charlie function";
}
function charlie() {
    echo "This is the charlie function";
}
function charlie() {
    echo "This is the charlie function";
}
function charlie() {
    echo "This is the charlie function";
}
function charlie() {
    echo "This is the charlie function";
}
function charlie() {
    echo "This is the charlie function";
}
function charlie() {
    echo "This is the charlie function";
}
function charlie() {
    echo "This is the charlie function";
}
function charlie() {
    echo "This is the charlie function";
}
function charlie() {
    echo "This is the charlie function";
}
function charlie() {
    echo "This is the charlie function";
}
function charlie() {
    echo "This is the charlie function";
}
function charlie() {
    echo "This is the charlie function";
}
function charlie() {
    echo "This is the charlie function";
}
function charlie() {
    echo "This is the charlie function";
}
#}
/*if(array_key_exists('name', $_POST)){
    search();
}
function get_post($var)
{
    return mysql_real_escape_string($_POST[$var]);
}
if ($result->num_rows > 0) {
//Output data of each row
    while($row = $result->fetch_assoc()) {
    echo "Name: " . $row["first_name"]. " " . $row["last_name"]. "<br>";
    }
} else {
    echo "No Members";
}
*/
$CONNECTION->close();
?>
18.07.2018

  • Я не уверен, для чего нужен весь этот код, но это довольно простой SQL-запрос, чтобы получить все имена, начинающиеся с буквы. SELECT * FROM users WHERE first_name LIKE "P%" получит все имена first_name, начинающиеся с P. 19.07.2018
  • У вас нет вопросов. Но зачем вам такая система? Не уверен, что вижу в этом пользу для пользователей. Если у вас есть только несколько человек с каждой буквой, то, конечно, я вижу преимущество. Но если вы наберете A и у вас появится 100 имен, будет ли проще найти мое имя, чем просто набирать остальные? 19.07.2018
  • ммм, интересно... звучит как автозаполнение jqueryui.com/autocomplete 19.07.2018
  • Да, это не будет большой список, и я попытаюсь поместить его на планшет, который позволит довольно быстро проводить пальцем вверх и вниз, чтобы найти ваше имя в алфавитном порядке. И я извиняюсь, если это было неясно, мой вопрос заключался в том, как сделать поиск SQL с помощью PHP на основе выбранной буквы и вывести данные в таблицу first_names. Итак, если я выберу A, он выведет список всех пользователей в базе данных, чьи имена начинаются с A. И т. д. 19.07.2018
  • @ficuscr Да, но зачем использовать системное автозаполнение в наши дни, когда каждый браузер запоминает имя вашей учетной записи и, возможно, пароль. 20 лет назад ты был бы героем. 19.07.2018
  • @Андреас, я тебя слышу! Проповедь хору :) @PietroAretino продолжайте делать это в течение 20 лет, а затем, пожалуйста, вернитесь к этому вопросу. Вы будете вынуждены улыбаться. Что касается ответа: см. комментарий Девона о WHERE LIKE. 19.07.2018
  • Девон, спасибо, я постараюсь посмотреть, что я могу с этим сделать! @ficuscr да, я избегал печатать, потому что среда, в которой это будет использоваться, грязная, и все происходит быстро. Я хотел иметь возможность открыть эту веб-страницу на планшете, чтобы пользователи могли получить свое имя за 2 клика и провести пальцем вверх и вниз по списку. 19.07.2018
  • Этот код имеет смехотворные уровни дублирования до такой степени, что его не только невозможно поддерживать, но и невозможно прочитать. Не выдумывайте сотни таких функций. Не торопитесь, чтобы выразить вещи с точки зрения структур данных и циклов. 19.07.2018
  • @tadman Я впервые изучаю программирование и PHP, я уверен, что это крайне неэффективно. Все еще учусь :/ 19.07.2018
  • Я это понимаю, и здорово, что ты пытаешься учиться. Вам нужно переключить свое мышление с бесконечного копирования и вставки на описание вещей с точки зрения array(...) и тому подобного. Как только вы представите вещи в виде структур данных, вы сможете делать гораздо больше, используя гораздо меньше кода. Поначалу это может быть немного сложно, но если вы можете продумать на шаг или два вперед то, как будут использоваться ваши данные, вы сможете структурировать их так, чтобы их было легко использовать. 19.07.2018

Ответы:


1

Как говорят люди, код немного нелеп. Я просто собираюсь поделиться этим в надежде научить вас чему-то. Не особо стремлюсь ответить на ваш вопрос. На самом деле я бы предложил просто удалить вопрос, поскольку я не уверен, насколько он полезен для других. И «Как выполнить поиск SQL с подстановочными знаками», очевидно, вопрос-обман.

В любом случае... Можно было бы сократить до чего-то вроде:

//example.com?search_letter=A

$pattern = isset($_REQUEST('search_letter')) ? $_REQUEST('search_letter') : null;

if (empty($pattern)) {
    die('missing search paramter');
}

$pattern = $pattern . '%';
$sql = 'SELECT * FROM users WHERE first_name LIKE ?';

$sth->execute([$pattern]);
$results = $sth->fetchAll();

Какие изменения? Что такое переменная? Письмо. Отличается ли то, как вы визуализируете вывод для A, от того, как вы будете интерпретировать и выводить B? Нет. Так что держите его СУХИМ (не повторяйтесь).

18.07.2018
Новые материалы

Кластеризация: более глубокий взгляд
Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

Как написать эффективное резюме
Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

Частный метод Python: улучшение инкапсуляции и безопасности
Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

Как я автоматизирую тестирование с помощью Jest
Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..