2016-07-22 3 views
1

Так что я недавно пытался создать сайт. Веб-сайт, который я создаю, имеет несколько страниц, которые в основном одинаковы, за исключением различных элементов элементов. Я хочу уменьшить трудоемкое время, необходимое для одновременного изменения всех этих страниц, имея имя и цену элемента, взятого из базы данных, где хранится информация обо всех элементах (включая специальный идентификатор для каждого элемента) , Основная идея заключается в том, что мне нужно было указать только идентификатор элемента, и база данных сама получит информацию. У меня уже есть базовое кодирование HTML и PHP, но я не знаю, как сделать PHP-код в функции, а затем сделать его исполняемым внутри команды. Я буду включать код PHP ниже:Как вставить HTML-данные в PHP-скрипт?

<?php 
$servername = "localhost"; 
$username = "root"; 
$password = "testpw"; 
$dbname = "testdb"; 

$conn = new mysqli($servername, $username, $password, $dbname); 
if($conn->connect_error) { 
} 
$sql = "SELECT name, price FROM items WHERE id='(Get ID from HTML code here)'"; 
$result = $conn->query($sql); 

if ($result->num_rows > 0) { 
while($row = $result->fetch_assoc()) { 
echo " " .$row["name"]. " " .$row["price"]. "<br>"; 
} 
} else { 
echo "0 results"; 
} 
$conn->close(); 

?> 

Я уже знаю этот код выписывает специфику для ID я ставлю где (Получить идентификатор из HTML код здесь), я просто нужно знать, как импортировать ID в HTML, а затем можно поместить функцию в код.

Вот HTML:

<div id="images"> 
<figure> 
<img class="image" id=(Item ID here) src="idk.png" width="225" height="190" alt=""> 
<figcaption><h3>Name: (PHP Function Here) </h3></figcaption> 
<figcaption><h5>Price: (PHP Function Here)/month</h5></figcaption> 
<figcaption><div id="tfbutton5"><form action="buy.html"><input type="submit" value="Rent" class="tfbutton5"></form></figcaption> 
</div> 
</figure> 
</div> 

Любое решение будет иметь в виду, так как это большой дорожный блок в настоящее время в моем веб-строительства. Даже если это не тот ответ, который я искал. Спасибо.

+0

'$ sql =" SELECT name, price FROM items WHERE id = '(Получить идентификатор из HTML-кода здесь)' '; ': PHP работает на сервере до того, как HTML будет отправлен на экран; для этого вам нужно отправить 'id' на сервер, используя форму, ссылку или запрос ajax. http://programmers.stackexchange.com/questions/171203/what-are-the-differences-between-server-side-and-client-side-programming – CD001

+0

глупый/простой/опасный пример 'query (« SELECT * name, price FROM items, где id = $ _GET [id] ")' все. передать идентификатор в качестве параметра запроса, а затем использовать его в запросе. конечно, узнайте о [sql injection attack] (http://bobby-tables.com) FIRST, прежде чем вы попробуете подобное. –

+0

Вам понадобится javascript, чтобы делать то, что вы просите. Я предлагаю взглянуть на AngularJs, javascript framework. Однако этот метод кажется глупым, вы не должны получать данные из HTML, если пользователь не предоставит вам эти данные. –

ответ

0

Что вы ищете, это система шаблонов. Значения, которые вы заменили (PHP Function Here), должны быть оценены до того, как вы начнете выводить любой html и назначаться определенным переменным. Затем в шаблоне вы хотите написать что-то вроде:

<h3>Name: {{ name }}</h3> 
<h3>Price: {{ price }}</h3> 

и шаблонизатор заменит {{ name }} и {{ price }} со значениями этих переменных.

Перед тем, как приступить к реализации такого решения, по своему усмотрению, проверить существующий шаблонные двигатели, например Twig: http://twig.sensiolabs.org/

0

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

<?php include("your-db-php-file"); ?> 
    <div id="images"> 
    <figure> 
    <img class="image" id=(Item ID here) src="idk.png" width="225" height="190" alt=""> 
    <figcaption><h3>Name: <?php echo $nameVar; ?></h3></figcaption> 
    <figcaption><h5>Price: <?php echo $priceVar; ?>/month</h5></figcaption> 
    <figcaption><div id="tfbutton5"><form action="buy.html"><input type="submit" value="Rent" class="tfbutton5"></form></figcaption> 
    </div> 
    </figure> 
    </div> 

Да, я бы очень рекомендовал, о чем упомянул Марк Б, прочитав лучшие практики для PHP и MySQL.

+0

Да, использование шаблонов - еще одна хорошая идея. Но снова решайте одно за раз. – jasonlam604

Смежные вопросы