2015-07-12 33 views
2

我环顾这一整天,但无法找到一种方法。如何从mysql结果中弹出警报?

基本上我有一个Jquery函数的HTML页面,它将数据发送到一个php文件从数据库中检索数据。

检索数据到html页面正常工作。

我想要做的是在从数据库中提取的值和设置的限制之间运行比较。

这是我到目前为止。

HTML文件

<html> 
 

 
<head> 
 
    <style> 
 
    table, 
 
    th, 
 
    td { 
 
     border: 1px solid black; 
 
     border-collapse: collapse; 
 
    } 
 
    th, 
 
    td { 
 
     padding: 5px; 
 
    } 
 
    </style> 
 
    <script> 
 
    function check(str1) { 
 
     if (str1 == "") { 
 
     document.getElementById("txtHint").innerHTML = ""; 
 
     return; 
 
     } else { 
 
     if (window.XMLHttpRequest) { 
 
      // code for IE7+, Firefox, Chrome, Opera, Safari 
 
      xmlhttp = new XMLHttpRequest(); 
 
     } else { 
 
      // code for IE6, IE5 
 
      xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); 
 
     } 
 
     xmlhttp.onreadystatechange = function() { 
 
      if (xmlhttp.readyState == 4 && xmlhttp.status == 200) { 
 
      document.getElementById("txtHint").innerHTML = xmlhttp.responseText; 
 
      } 
 
     } 
 
     xmlhttp.open("GET", "test.php?q=" + str1, true); 
 
     xmlhttp.send(); 
 
     } 
 
    } 
 
    </script> 
 
</head> 
 

 
<body> 
 
    <form name="myForm"> 
 
    Core Arm number:</br> 
 
    <input type="number" id="Arm" name="Arm" onchange="check(this.value)"> 
 
    </br> 
 
    </form> 
 
    <br> 
 
    </div> 
 
    <div id="txtHint"><b>info will be listed here...</b> 
 
    </div> 
 

 
</body> 
 

 
</html>

和PHP文件

<?php 

$q = intval($_GET['q']); 
echo $q."<br>"; 
$servername = "localhost"; 
$username = "Admin"; 
$dbname = "coredb"; 
$tbname= "ArmTable"; 

// Create connection 
$conn = mysqli_connect($servername, $username, $dbname); 

// Check connection 
if (!$conn) { 
    die("Connection failed: " . mysqli_connect_error()."<br>"); 
} 
echo "Connected successfully <br>"; 
mysqli_select_db($conn,$dbname); 

$row = mysqli_fetch_array(mysqli_query($conn, "SELECT SleCount FROM ".$tbname." WHERE CoreArm = '123456'")); 
// This is in the PHP file and sends a Javascript alert to the client 

echo '<script language="javascript">'; 
echo 'alert("message successfully sent")'; 
echo '</script>'; 

    if ($row['SleCount']>=2) 
echo "Exeeded Count ".$row['SleCount']." Segregate arm for Sleeve change. <script type='text/javascript'> alert('segregate');</script> <br><br><br>"; 

mysqli_close($conn); 
?> 

任何帮助,将不胜感激。

此外,如果你知道更好的方式让我知道。

回答

0

所以,重新读书后,我明白了。 在PHP替换此

echo '<script language="javascript">'; 
echo 'alert("message successfully sent")'; 
echo '</script>';` 

与此:

echo 'message successfully sent'; 

***相同与其他回波

然后在的javascript,这

if (xmlhttp.readyState == 4 && xmlhttp.status == 200) { 
    document.getElementById("txtHint").innerHTML = xmlhttp.responseText; 
} 

本:

if (xmlhttp.readyState == 4 && xmlhttp.status == 200) { 
    alert(xmlhttp.responseText); 
} 

应工作(未测试)

+0

THX答复。那种作品。即使警报框为空,这总是会带来一个警告框。在PHP文件中我有一个if语句,用于比较数据库中的值是2还是更大。只有在条件为真的情况下如何提醒警报框? – MOzgafD1

+0

只需在php中创建一个变量,其中您将条件结果0或1.您需要将消息和条件都传递给javascript。例如,将消息格式化为“condition || message”。你使用两个“||”在javascript中分割字符串。然后再次测试条件(如果为true)并提醒消息。 –

+0

我不明白。为什么你将条件和消息发送给javascript。你可以做一个if语句来显示警报吗?你能告诉我一个例子吗? – MOzgafD1