2016-02-01 96 views
-4

我已经写下面的代码来将mysql中的变量设置为1或0.但不知何故,只要我第一个按钮(1)总是保存分配给第二个按钮的0值在mysql表中。php函数的onClick参数

<head> 
<?php 
function update_ziekenwagen($Status) { 
    $servername = "localhost"; 
    $username = "webapp"; 
    $password = "password"; 
    $dbname = "spoed"; 
    // Create connection 
    $conn = new mysqli($servername, $username, $password, $dbname); 
    // Check connection 
    if ($conn->connect_error) { 
     die("Connection failed: " . $conn->connect_error); 
    } 

    $sql = "UPDATE AlgemeneVars SET value='".$Status."' WHERE id=4";  

    if ($conn->query($sql) === TRUE) { 
     echo "Record updated successfully:" . $Status; 
     //echo "UPDATE AlgemeneVars SET value=' " . $Status . " ' WHERE id=4"; 
    } else { 
     echo "Error updating record: " . $conn->error; 
    } 

    $conn->close();} 
?> 
</head> 
<body> 
<input type="button" value="Vertr" id="Vertr" name="Vertr" onclick="document.write('<?php update_ziekenwagen(1); ?>');" /> 
<input type="button" value="Terug" id="Terug" name="Terug" onclick="document.write('<?php update_ziekenwagen(0); ?>');" /> 
</body> 
+0

你是如何解决这个问题的? –

+4

这不是它的工作原理。你不能直接从Javascript调用php(或任何其他服务器端语言)函数。阅读AJAX – DigitalDouble

+0

你可以通过使用jQuery来完成,ajax – devpro

回答

0
<head> 
<?php 
function update_ziekenwagen() { 
    $Status = $_POST['status']; 
    $servername = "localhost"; 
    $username = "webapp"; 
    $password = "sW7HwM225PxrwbZC"; 
    $dbname = "spoed"; 
    // Create connection 
    $conn = new mysqli($servername, $username, $password, $dbname); 
    // Check connection 
    if ($conn->connect_error) { 
     die("Connection failed: " . $conn->connect_error); 
    } 

    $sql = "UPDATE AlgemeneVars SET value='".$Status."' WHERE id=4";  

    if ($conn->query($sql) === TRUE) { 
     echo "Record updated successfully:" . $Status; 
     //echo "UPDATE AlgemeneVars SET value=' " . $Status . " ' WHERE id=4"; 
    } else { 
     echo "Error updating record: " . $conn->error; 
    } 

    $conn->close(); 
} 
if (!empty($_POST)){ 
    update_ziekenwagen(); 
} 
?> 
</head> 
<body> 
<form> 
    <input type="hidden" name="status" value="1" /> 
    <input type="submit" /> 
</form> 
<form> 
    <input type="hidden" name="status" value="0" /> 
    <input type="submit" /> 
</form> 
</body> 

,您仍然可以让它不使用Ajax虽然使用上面的代码工作。但这是不是安全或良好的做法。