0
我公開我的情況,我選擇通過MySQL數據,並填寫一個組合與PHP和聰明,然後我有一個按鈕,以添加更多的數據到這個組合和bbdd。一切正常,但我POST數據收集是添加到組合數據並沒有把它撿起來時如何使用javaScript將數據添加到組合中,然後選擇POST?
CODE:
HTML代碼智者填補組合,和按鈕,將新數據添加到組合
<form action="algo.php" method="post">
<div class="form-field">
<label for="cliente_sector">Sector*</label>
<select name="cliente_sector" id="cliente_sector">
{section name=sector loop=$sectores}
<option value="{$sectores[sector].sector}">{$sectores[sector].sector}</option>
{/section}
</select>
<p>Sector del cliente</p>
<label onclick="javascript:anadir('divAnadir')">Nuevo sector</label>
</div>
<div id="divAnadir" style="display: none;">
Nuevo sector:<input type="text" id="nuevo_sector" name="nuevo_sector" value=""/>
<input onclick="javascript:nuevoSector()" type="button" value="Añadir nuevo sector "/>
</div>
</form>
JavaScript函數
function anadir(a){
if(document.getElementById(a).style.display=="none")
$("#divAnadir").css("display", "block");
else
$("#divAnadir").css("display", "none");
}
function nuevoSector(){
var datos = document.getElementById("nuevo_sector").value;
$.get("/ajax/altaNuevoSector.php?sector="+datos, datos, function(data){
if(data != 1) {
alert('Nuevo sector añadido');
$("#divAnadir").css("display", "none");
$("#cliente_sector").append('<option value=" " selected="selected">'+data+'</option>')
return true;
}else{
alert('Este sector ya existe, pruebe de nuevo.');
return false;
}
});
}
PHP腳本來更新BBDD和應對的javascript:
<?php
session_start();
require_once('../includes/config.php');
if($_GET['sector']){
$sql = "INSERT INTO clientes_sectores(sector) VALUES ('".$_GET['sector']."')";
$consulta = $con->ejecutar($sql);
if(!is_numeric($consulta))
echo '1';
else
echo $_GET['sector'];
}
?>
所有工作正常的數據被添加到bbdd並顯示在組合中,問題是組合是在一個窗體中,通過後我嘗試挑選數據,如果值cliente_sector是新的沒有讓我拿起它,$ _POST ['cliente_sector']被清空。我如何解決它? 當我在我的表單中提交$ _POST ['clientes_sector'],如果在組合中選擇了新的值。
謝謝
我沒有看到你的代碼中的任何POST查詢,你能解釋一下嗎? – Awea 2013-04-24 13:45:56
我沒寫過。我寫道,組合是在一個表格中,形式代碼
你是**容易受到[SQL注入攻擊](http://bobby-tables.com/)** – Quentin 2013-04-25 07:20:03