用户更改nm_peca,将选择tipo_preco,然后在MySQL数据库中查找价格以完成文本框vlr_peca。
我需要做些什么才能获得产品的价值?
<?php>
$query = mysql_query("SELECT id, nm_peca, vlr_original,
vlr_paralelo, fabricante
FROM peca
ORDER BY nm_peca");
<select id="nm_peca" name="nm_peca"
title="Selecione um status."
class="form-control" size="1">
<option value="">Status</option>
<option value="N/A">N/A</option>
<option value="S">S - Substituir</option>
</select>
</div>
</div>
<select id="tipo_preco" name="tipo_preco"
class="form-control" size="1">
<option value="">Tipo</option>
<option value="Peça Original">Original</option>
<option value="Peça Paralela">Paralela</option>
</select>
</div>
</div>
<div class="col-md-1">
<div class="input-group btn-group">
<input type="text" value="????????" name="vlr_peca"
class="form-control" readonly>
</div>
</div>
答案 0 :(得分:0)
你的代码有点令人困惑,因为你真正想要的东西对我来说并不清楚,也许它并没有帮助它用不同的语言。什么是$query
?您没有在代码中使用它,因此您需要执行此操作才能访问它:
$rows = array();
while ($row = mysql_fetch_assoc($query)) {
$rows[] = $row;
}
print '<pre>'. print_r($rows, true) . '</pre>';
然后,您需要使用ajax请求或在前端设置javascript变量进行更改。我会继续使用后者,因为它更具说明性。
所以我会将jQuery的https://code.jquery.com/jquery-2.1.4.min.js的cdn添加到文件的顶部,如下所示:
<script type="text/javascript" src="https://code.jquery.com/jquery-2.1.4.min.js"></script>
然后您需要为<input id="dynamic-variable" type="text" value="????????" name="vlr_peca">
之类的输入标记添加输入ID,然后使用以下内容:
<script type="text/javascript">
$(document).ready(function() {
$('#tipo_preco').change(function() {
if ($(this).val() == 'Peça Original') {
$('#dynamic-variable').val('$5,000,000,000.00');
} else if ($(this).val() == 'Peça Paralela') {
$('#dynamic-variable').val('$300 billion trillion dollars');
} else {
$('#dynamic-variable').val('Bro. Choose one.');
}
});
});
</script>
我不打算为你编写这一切,因为我不知道你从数据库中获得了什么样的数据,但这应该足以让你开始。您需要能够访问mysql查询中的数据,并且您可能只想在javascript中使用<?= $db_variable ?>
或<?php echo $db_variable?>
,其中我有金额变量。这应该足以让你开始。阅读php mysql_query和jQuery
AJAX 的 如果您是通过AJAX执行此操作,则需要第二个访问数据库的页面,您需要$ _GET或$ _POST变量,然后打印回来。
所以你的JavaScript会是这样的:
$.get('/the/page.php?tipo_preco=' + $('#tipo_preco').val(), function(response) {
if (response != '') {
$('#dynamic-variable').val(response);
}
});
你的第二页将是这样的:
<?php
// code that sets up the database
// .... //
// now your code
$selected_value = $_GET['tipo_preco'];
$result = mysql_query("SELECT price FROM table WHERE column_val = '" . mysql_real_escape_string($selected_value) . "'");
$row = mysql_fetch_assoc($result); // assuming you're only fetching one row
print $row['price'];
?>
我建议你选择第一个建议,它是更快,更少移动的部分。