如何从mysql接收新数据时弹出警报

时间:2016-05-29 07:52:49

标签: php mysql

我有2个不同功能的php页面。第一页用于将一些数据上传到mysql。第二页用于显示mysql中的数据。我的问题是如何从mysql接收新数据时在第二页上弹出通知?这是我的源代码。 对不起我的英语不好。感谢。

- > upload.php的

if ( ! empty( $_POST ) ) { 
enter $mysqli = new mysqli( 'localhost', 'root', '', 'tryjade' );

if ( $mysqli->connect_error ) {
die( 'Connect Error: ' . $mysqli->connect_errno . ': ' . $mysqli->connect_error ); }

$sql = "INSERT INTO user (name) VALUES ('{$mysqli->real_escape_string($_POST['name'])}')";
$insert = $mysqli->query($sql);


if ( $insert ) {
echo "Success! Row ID: {$mysqli->insert_id}";
} else {
die("Error: {$mysqli->errno} : {$mysqli->error}"); }

$mysqli->close();
}

- >的index.php

$dbhost = 'localhost';
$dbuser = 'root';
$dbpass = '';
$koneksi = mysql_connect($dbhost, $dbuser, $dbpass);

if(! $koneksi ) {
die('connection failed: ' . mysql_error()); }
$sql = 'SELECT id, name FROM user';
mysql_select_db('tryjade');
$ambildata = mysql_query( $sql, $koneksi);

if(! $ambildata ) {
die('Gagal ambil data: ' . mysql_error());
}
while($row = mysql_fetch_array($ambildata, MYSQL_ASSOC)) {
echo "ID :{$row['id']}  <br> ".
     "NAME : {$row['name']} <br> ";
}
mysql_close($koneksi);

3 个答案:

答案 0 :(得分:0)

您可以使用ajax函数。在上传页面中,您还可以包含select查询,以从table.print获取最新结果,并将数据显示在索引页面中作为ajax结果。 例如:

index.php

$.ajax({
       type:'POST',
       url: 'update.php',
       data : datas you need to send,
       success:function(msg)
       {
        $("id of the div to show the result).html(msg);
       }
});

update.php

    if ( ! empty( $_POST ) ) { 
enter $mysqli = new mysqli( 'localhost', 'root', '', 'tryjade' );

if ( $mysqli->connect_error ) {
die( 'Connect Error: ' . $mysqli->connect_errno . ': ' . $mysqli->connect_error ); }

$sql = "INSERT INTO user (name) VALUES ('{$mysqli->real_escape_string($_POST['name'])}')";
$insert = $mysqli->query($sql);


if ( $insert ) {
echo "Success! Row ID: {$mysqli->insert_id}";

//编写select查询并以表格形式回显结果     } else {     死(“错误:{$ mysqli-&gt; errno}:{$ mysqli-&gt; error}”); }

$mysqli->close();
}

答案 1 :(得分:0)

您应该使用cookie来保存sql表的最后加载的数据id然后再匹配max id再次加载并写入警报代码,如果cookie id小于max id。

答案 2 :(得分:0)

您可以尝试使用session,因为会话允许您在请求之间存储数据。

  

session_start()和$ _SESSION

upload.php的

<?php
session_start();

if ( ! empty( $_POST ) ) { 
      $mysqli = new mysqli( 'localhost', 'root', '', 'tryjade' );

........

if ( $insert ) {
     echo "Success! Row ID: {$mysqli->insert_id}";
     $_SESSION['message'] = "Your Message";
} else {

的index.php

<?php
session_start();
$dbhost = 'localhost';
$dbuser = 'root';
$dbpass = '';

.........

echo $_SESSION['message'];

while($row = mysql_fetch_array($ambildata, MYSQL_ASSOC)) {
   echo "ID :{$row['id']}  <br> ".
   "NAME : {$row['name']} <br> ";