html 與php+MySQL完成前後端交互
1.php連接資料庫與基本操作配置
(1)php建立資料庫【連線】(相關mysql影片教學推薦:《mysql教學》)
语法:Object mysqli_connect("域名","DB账号","DB密码","DB库名") 例子:$con = mysqli_connect('localhost','root','','frankdb');
(2)向DB中插入資料時包含中文出現亂碼的解決方案
語法:
mysqli_query($con,"set names utf8");
說明:設定成功會回傳1,根據實際情況不一定必須儲存回傳結果。
(3)設定client端與server端保持字元編碼一致
語法:
mysqli_query($con,"set character_set_client=utf8"); mysqli_query($con,"set character_set_results=utf8");
(4)執行sql語句
语法:$结果 = $DB连接->query(sql语句); 例子:var_dump($result = $con->query($sql));
2.使用sql語句基本【範本】
a.建立連線
b.判斷是否連接
c.設定編碼
d.建立sql語句
e執行結果條數
g.拼湊結果
h.json化回傳
<?php //a.sql 查询语句 无条件查询,即直接写1即可 //$sql='select * from 哪张表 where 条件'; 有条件查询,在where后面写出查询条件,如果多个条件需要用and 或or 来连接。 //$sql="select stuName from stud where stuScore='100' and stuGender='female'"; //$sql="select stuName from stud where stuScore='100' or stuGender='female'"; $con=mysqli_connect('localhost','root','','studb') if($con){ echo'<pre class="brush:php;toolbar:false">'; echo'数据库连接成功,等待指令...'; mysqli_query($con,'set names utf8'); mysqli_query($con,'set character_set_client=utf8'); mysqli_query($con,'set character_set_results=utf8'); $sql="select * from stud where 1"; $result=$con->query($sql); if($result>num_rows>0){ $info=[]; for($i=0;$row=$result->fet_assoc();$i++){ $info[$i]=$row; } echo json_encode($info); } }else{ echo'<pre class="brush:php;toolbar:false">'; echo'数据连接失败,请重新连接‘; }
b.插入語句(新增語句)
兩種寫法:
(1)$sql="insert into 表名(字段1,字段2,...) values(值1,值2,...)"; (2)$sql='insert into 表名('值1’,'值2',...)";
$con=mysqli_connect('localhost','root','','studb'); if($icon){ echo'<pre class="brush:php;toolbar:false">'; echo'数据库连接成功,等待指令...'; mysqli_query($con, 'set names utf8'); mysqli_query($con, 'set character_set_client=utf8'); mysqli_query($con, 'set character_set_result=utf8'); $sql="insert into stud stuName,stuGender,stuAge,stuNum,stuScore)values('lucy','female','14','123456789','90')"; $sql="insert into stud values('lucy','female','14','123456789','90')"; $result=$con->query($sql); if($result){ echo'添加成功'; }else{ echo'添加失败'; }
c.修改語句(更新語句)update
$sql="update 表名 set 字段1=‘新值1’,字段2=‘新值2’,... where 条件“;
$con=mysqli_connect('localhost','root','','studb'); if($con){ echo "<pre class="brush:php;toolbar:false">"; echo "数据库连接成功,等待指令..."; mysqli_query($con, 'set names utf8'); mysqli_query($con, 'set character_set_client=utf8'); mysqli_query($con, 'set character_set_results=utf8'); $sql="update stud set stuScore='100' where stuName='lily'"; $result=$con->query($sql); var_dump($result); }else{ echo "数据库连接失败!!!"; }
d. 刪除語句delete
$sql="delete from 表名 where 条件“; $con=mysqli_connect('localhost','toot','';'studb' ); if($con){ echo "<pre class="brush:php;toolbar:false">"; echo "数据库连接成功,等待指令..."; // mysqli_query($con, 'set names utf8'); mysqli_query($con, 'set character_set_client=utf8'); mysqli_query($con, 'set character_set_results=utf8'); // $sql = "delete from stud where stuName='lucy'"; $result = $con->query($sql); var_dump($result); }else{ echo "数据库连接失败!!!"; } ?> ajax & php <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> <span>姓名:</span><input type="text" class="stuName"><br/> <span>性别:</span><input type="text" class="stuGender"><br/> <span>年龄:</span><input type="text" class="stuAge"><br/> <span>手机:</span><input type="text" class="stuNumber"><br/> <span>分数:</span><input type="text" class="stuScore"><br/> <button>增:将上述信息添加至数据库</button><br/> <button>删:根据姓名删除指定的内容</button><br/> <button>改:根据姓名修改指定的内容</button><br/> <button>查:查询数据库中所有的内容</button> <!-- 1.引入jquery框架 --> <script src="jquery-1.12.3.min.js"></script> <script> $('button:eq(0)').click(function(){ //2.在想要和后台交互的时候,调用$.ajax()方法 //参数是JSON格式 $.ajax({ //3.ajax结构需要一系列参数支持 type:'post',//get|post url:'http://127.0.0.1/day3/code/lesson6_ajax&php/lesson6_ajax&php.php', dataType:'json', data:{ //data是post请求独有的,因为post请求才需要携带数据给后台 stuName:$('.stuName').val(), stuGender:$('.stuGender').val(), stuAge:$('.stuAge').val(), stuNumber:$('.stuNumber').val(), stuScore:$('.stuScore').val(), }, //请求完成后,若收到后台返回的数据(收到响应response),这个函数会被自动执行。 success:function(data){ console.log(data); } }); }); $('button:eq(1)').click(function(){ }); $('button:eq(2)').click(function(){ }); $('button:eq(3)').click(function(){ }); </script> </body> </html> <?php /* 1.内置对象 在php中内置了两个对象用来接收,前端发来的信息。 $_GET 和 $_POST $_GET用于获取在前端通过get请求发来的信息 $_POST用于获取在前端通过post请求发来的信息 */ echo json_encode($_POST); ?> ajax select&php <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> <span>姓名:</span><input type="text" class="stuName"><br/> <span>性别:</span><input type="text" class="stuGender"><br/> <span>年龄:</span><input type="text" class="stuAge"><br/> <span>手机:</span><input type="text" class="stuNumber"><br/> <span>分数:</span><input type="text" class="stuScore"><br/> <button>增:将上述信息添加至数据库</button><br/> <button>删:根据姓名删除指定的内容</button><br/> <button>改:根据姓名修改指定的内容</button><br/> <button>查:查询数据库中所有的内容</button> <script src="jquery-1.12.3.min.js"></script> <script> $('button:eq(0)').click(function(){ //判空操作 var stuNameValue = $('.stuName').val(); var stuGenderValue = $('.stuGender').val(); var stuAgeValue = $('.stuAge').val(); var stuNumberValue = $('.stuNumber').val(); var stuScoreValue = $('.stuScore').val(); if( stuNameValue.length==0|| stuGenderValue.length==0|| stuAgeValue.length==0|| stuNumberValue.length==0|| stuScoreValue.length==0){ alert('任意某一个输入信息都不能为空!'); return; } $.ajax({ type:'post', url:'http://127.0.0.1/day3/code/lesson7_html&php&mysql/lesson7_html&php&mysql.php', dataType:'json', data:{ stuName:$('.stuName').val(), stuGender:$('.stuGender').val(), stuAge:$('.stuAge').val(), stuNumber:$('.stuNumber').val(), stuScore:$('.stuScore').val(), }, success:function(data){ console.log(data); if(data.msg=='add success'){ alert('添加成功'); }else{ alert('添加失败'); } } }); }); $('button:eq(1)').click(function(){ }); $('button:eq(2)').click(function(){ }); $('button:eq(3)').click(function(){ $.ajax({ type:'get', url:'http://127.0.0.1/day3/code/lesson7_html&php&mysql/lesson7_select.php', dataType:'json', success:function (data){ console.log(data); }, error: function (err){ console.log(err); } }); }); </script> </body> </html> <?php //查询功能的后台php文件 $success = array('status' => 'success'); $error = array('status' => 'error'); $con = mysqli_connect('localhost','root','','studb'); if($con){ mysqli_query($con, 'set names utf8'); mysqli_query($con, 'set character_set_client=utf8'); mysqli_query($con, 'set character_set_results=utf8'); $sql = "select * from gradeonesheet where 1"; $result = $con->query($sql); if($result->num_rows>0){ $info = []; for($i=0; $row=$result->fetch_assoc(); $i++){ $info[$i] = $row; } // echo json_encode($info); } } ?> <?php //添加数据的 $success = array('status' => 'OK'); $error = array('status' => 'error'); $con = mysqli_connect('localhost','root','','studb'); if($con){ mysqli_query($con, 'set names utf8'); mysqli_query($con, 'set character_set_client=utf8'); mysqli_query($con, 'set character_set_results=utf8'); // $stuName = $_POST['stuName']; $stuGender = $_POST['stuGender']; $stuAge = $_POST['stuAge']; $stuNumber = $_POST['stuNumber']; $stuScore = $_POST['stuScore']; $sql = "insert into gradeonesheet values('$stuName','$stuGender','$stuAge','$stuNumber','$stuScore')"; $result = $con->query($sql); if($result){ $success['msg'] = 'add success'; echo json_encode($success); }else{ $error['msg'] = 'add failed'; echo json_encode($error); } }else{ $error['msg'] = 'database connect failed'; echo json_encode($error); } ?>
相關建議:
以上是html 與php+MySQL完成前後端交互的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

PHP仍然流行的原因是其易用性、靈活性和強大的生態系統。 1)易用性和簡單語法使其成為初學者的首選。 2)與web開發緊密結合,處理HTTP請求和數據庫交互出色。 3)龐大的生態系統提供了豐富的工具和庫。 4)活躍的社區和開源性質使其適應新需求和技術趨勢。

HTML、CSS和JavaScript是構建現代網頁的核心技術:1.HTML定義網頁結構,2.CSS負責網頁外觀,3.JavaScript提供網頁動態和交互性,它們共同作用,打造出用戶體驗良好的網站。

在React中使用HTML渲染組件和數據可以通過以下步驟實現:使用JSX語法:React使用JSX語法將HTML結構嵌入JavaScript代碼中,編譯後操作DOM。組件與HTML結合:React組件通過props傳遞數據,動態生成HTML內容,如。數據流管理:React的數據流是單向的,從父組件傳遞到子組件,確保數據流動可控,如App組件傳遞name到Greeting。基本用法示例:使用map函數渲染列表,需添加key屬性,如渲染水果列表。高級用法示例:使用useState鉤子管理狀態,實現動

多次調用session_start()會導致警告信息和可能的數據覆蓋。 1)PHP會發出警告,提示session已啟動。 2)可能導致session數據意外覆蓋。 3)使用session_status()檢查session狀態,避免重複調用。

IIS和PHP可以兼容,通過FastCGI實現。 1.IIS通過配置文件將.php文件請求轉發給FastCGI模塊。 2.FastCGI模塊啟動PHP進程處理請求,提高性能和穩定性。 3.實際應用中需注意配置細節、錯誤調試和性能優化。

session_start()iscucialinphpformanagingusersessions.1)ItInitiateSanewsessionifnoneexists,2)resumesanexistingsessions,and3)setsasesessionCookieforContinuityActinuityAccontinuityAcconActInityAcconActInityAcconAccRequests,EnablingApplicationsApplicationsLikeUseAppericationLikeUseAthenticationalticationaltication and PersersonalizedContentent。

AI可以幫助優化Composer的使用,具體方法包括:1.依賴管理優化:AI分析依賴關係,建議最佳版本組合,減少衝突。 2.自動化代碼生成:AI生成符合最佳實踐的composer.json文件。 3.代碼質量提升:AI檢測潛在問題,提供優化建議,提高代碼質量。這些方法通過機器學習和自然語言處理技術實現,幫助開發者提高效率和代碼質量。

Laravel優化Web開發流程的方法包括:1.使用路由系統管理URL結構;2.利用Blade模板引擎簡化視圖開發;3.通過隊列處理耗時任務;4.使用EloquentORM簡化數據庫操作;5.遵循最佳實踐提高代碼質量和可維護性。
