Heim  >  Artikel  >  Web-Frontend  >  Ajax kombiniert mit MySQL-Datenbank, um eine teilweise Datenaktualisierung zu erreichen

Ajax kombiniert mit MySQL-Datenbank, um eine teilweise Datenaktualisierung zu erreichen

php中世界最好的语言
php中世界最好的语言Original
2018-03-30 15:41:242397Durchsuche

Dieses Mal bringe ich Ihnen Ajax in Kombination mit MySQL-Datenbank, um eine teilweise Datenaktualisierung zu erreichen, und Ajax in Kombination mit MySQL-Datenbank, um eine teilweise Datenaktualisierung zu erreichen. Was sind die Vorsichtsmaßnahmen? sind die tatsächlichen Fälle. Stehen Sie auf und werfen Sie einen Blick darauf.

Effektstatus: Wechseln Sie zwischen gesperrt und entsperrt, indem Sie auf den gesperrten Status klicken

1. Hauptprogramm: 01.php importiert Smarty- und MySQL-Klassen und ruft die Datenimportlistenvorlage ab

<?php
  include &#39;./include/Mysql.class.php&#39;;
  include &#39;./libs/Smarty.class.php&#39;;
  $db=new Mysql;
  $smarty=new Smarty;
  $lists=$db->getALL('users');
  $smarty->assign('lists',$lists);
  $smarty->display('list.html');
?>

2. Listenvorlage verwenden Smarty, um die Vorlagendaten zu durchlaufen und anzuzeigen, und Ajax aufzurufen, um den Sperrstatus zu ändern

<!DOCTYPE html>
<html>
<head>
  <meta charset=utf-8>
  <title>用户权限展示表</title>
</head>
<body>
    <table align="center" border="1" width="500">
      <center><h2>用户权限表</h2></center>
      <tr>
        <th>uid</th><th>用户名</th><th>密码</th><th>锁定状态</th><th>角色</th>
      </tr>  
      {foreach $lists as $list}
        <tr align="center">
          <td>{$list.uid}</td>
          <td>{$list.username}</td>
          <td>{$list.password}</td>
          {if $list.is_lock==1}
            <td><a href="javascript:lock(0,{$list.uid});" rel="external nofollow" >锁定</a></td>
            {else}
            <td><a href="javascript:lock(1,{$list.uid})" rel="external nofollow" ;>取消锁定</a></td>  
          {/if}    
          {if $list.role==1}
              <td>管理员</td>
          {else}
              <td>编辑者</td>    
          {/if}
        </tr>    
      {/foreach}  
    </table>  
</body>
    <script type="text/javascript">
      function lock(lock,uid){
          //创建ajax对象
          var xhr=new XMLHttpRequest();
          //打开一个链接
          xhr.open('get','02.php?is_lock='+lock+"&uid="+uid);
          //发送ajax请求
          xhr.send(null);
          //设置回调、监听函数
          xhr.onreadystatechange=function(){
            //如果ajax状态码响应正常且网络正常,获取响应文本
            if(xhr.readyState==4&&xhr.status==200){
              if(xhr.responseText){
                window.location.reload();
              }else{
                alert("切换状态失败!");
              }
            }
          }
        }
    </script>
</html>

3.ajax-Antwortskript, die übergebenen Daten empfangen Ajax durch Get-Methode Ändern Sie den Datenbankinhalt und senden Sie den Antworttext zurück an das JS-Skript

<?php
  include &#39;./include/Mysql.class.php&#39;;
  $lock=$_GET[&#39;is_lock&#39;];
  $uid=$_GET[&#39;uid&#39;];
  $db=new Mysql;
  $result=$db->update('users',"is_lock=$lock","uid=$uid");
  if($result){
    echo true;
  }else{
    echo false;
  }
?>

Ich glaube, Sie haben die Methode beherrscht, nachdem Sie den Fall in diesem Artikel gelesen haben Spannender Inhalt, bitte achten Sie auf andere verwandte Artikel auf der chinesischen PHP-Website!

Empfohlene Lektüre:

Detaillierte grafische Erklärung der Ajax-Implementierung dynamischer Kreisdiagramme und Säulendiagramme

Bestimmen Sie, ob dies der Fall ist eine ganze Zahl, wie kann man reguläre Zahlen als Dezimalzahlen oder reelle Zahlen schreiben

Das obige ist der detaillierte Inhalt vonAjax kombiniert mit MySQL-Datenbank, um eine teilweise Datenaktualisierung zu erreichen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn