Выполнение MySQL запросов по клику со страницы индекса

0

У меня есть index.php на моем localhost, и я бы хотел поместить несколько кнопок для запуска различных запросов sql здесь. Запросы будут такими:

  <table class="table1">
 <tr>
  <th>Date</th> 
  <th>Model</th> 
  <th>Type</th>
  <th>InProduction</th>
  <th>Price</th>
  <th>Range</th>
  <th>MaxSpeed</th>
  <th>HP</th>
  <th>Country</th>
  <th>EType</th>
  <th>Make</th>
  <th>MPG</th>
  <th>Seats</th>
 </tr>


<?php

  include ("config.php");

  $sql = "SELECT Date, Model, Type, InProduction, Price, Range, MaxSpeed, HP, Country, EType, Make, MPG, Seats FROM Auto order by Date DESC";
  $result = $conn->query($sql);
  if ($result->num_rows > 0) {


  $counter = 0;
  while($row = $result->fetch_assoc()) 
   {
        echo "<tr><td>" . $row["Date"]."</td><td>" . $row["Model"] . "</td><td>"
            . $row["Type"]. "</td><td>". $row["InProduction"]. "</td><td>". $row["Price"].  "</td><td>".$row["Range"]. "</td><td>". $row["MaxSpeed"].
            "</td><td>". $row["HP"]."</td><td>". $row["Country"]."</td><td>". $row["Etype"]."</td><td>". $row["Make"]. "</td><td>". $row["MPG"]. 
            "</td><td>". $row["Seats"]."</td></tr>";


            $counter++;
            if($counter % 33 == 0) { ?>
                </table>

                <table class="table1">
                     <tr>
   <th>Date</th> 
  <th>Model</th> 
  <th>Type</th>
  <th>InProduction</th>
  <th>Price</th>
  <th>Range</th>
  <th>MaxSpeed</th>
  <th>HP</th>
  <th>Country</th>
  <th>EType</th>
  <th>Make</th>
  <th>MPG</th>
  <th>Seats</th>
                     </tr>
            <?php }
    }
echo "</table>";

} else { echo "0 results"; }
$conn->close();
?>     
</table>

Здесь я включил все параметры, которые будут отображаться на странице. Вместо этого я хотел бы использовать различные параметры в каждом запросе. Таким образом, с каждым нажатием кнопки, я буду видеть различные параметры, перечисленные как таблица на индексной странице. Поэтому я планирую создать несколько php файлов, чтобы перечислять различные параметры, и запускать их одним нажатием кнопки на index.php. Как я могу сделать это с помощью кнопки onclick? и является ли это наиболее подходящим способом для этой задачи? Примечание. Я опубликую это только локально. Благодарю.

  • 1
    Вам нужно будет использовать AJAX для отправки запроса на сервер, а затем отобразить результат.
  • 0
    Без Ajax это можно сделать? потому что я буду использовать его только на моем компьютере / сервере.
Показать ещё 5 комментариев
Теги:

2 ответа

0

Я нашел решение ajax проблемы. Это не очень аккуратно и коротко, но оно работает. Я открыт для любого более короткого пути для достижения этой задачи, я был бы признателен, если вы поделитесь. Благодарю. Вот источник решения: http://javascript-coder.com/tutorials/re-introduction-to-ajax.phtml

Поэтому для каждой кнопки код ajax необходимо повторить с соответствующими идентификаторами.

HTML:

<div id="querydiv">   </div>

<button id='actbutton1'>query1</button>

AJAX:

<script>
    document.getElementById('actbutton1').onclick=function()
    {
      var xhr = new XMLHttpRequest();
        xhr.open("GET", "query1.php", true);

        xhr.onreadystatechange = function ()
        {
            if (xhr.readyState==4 && xhr.status==200)  
            {
                document.getElementById("querydiv").innerHTML=xhr.responseText;
            }
        }
        xhr.send();
    }
</script>
-1

В зависимости от того, что именно вы хотите сделать, вы также можете просто использовать строку запроса для включения/выключения того, какие запросы/данные вы хотите видеть. Вы можете легко добавить строку запроса к URL-адресу кнопкой, как хотите, просто установив параметр в событие onclick:

<button onclick="location.url = '/mypage.php?show=firstdata';">Button1</button>

Переключатель запросов в PHP может выглядеть следующим образом:

if($_GET['show'] == "firstdata") { 
   // 
   // the first type query here 
   // 
}elseif($_GET['show'] == "seconddata") { 
   // 
   // the second type query here 
   // 
} 
  • 0
    Можете ли вы предоставить ссылку на пример? пожалуйста.
  • 0
    Я проверю его. но я планирую использовать несколько запросов / кнопок.
Показать ещё 2 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню