重慶分公司,新征程啟航
為企業(yè)提供網(wǎng)站建設(shè)、域名注冊(cè)、服務(wù)器等服務(wù)
為企業(yè)提供網(wǎng)站建設(shè)、域名注冊(cè)、服務(wù)器等服務(wù)
1、新建一個(gè)edit.php
創(chuàng)新互聯(lián)建站是專業(yè)的肥西網(wǎng)站建設(shè)公司,肥西接單;提供網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作,網(wǎng)頁設(shè)計(jì),網(wǎng)站設(shè)計(jì),建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行肥西網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴(kuò)展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團(tuán)隊(duì),希望更多企業(yè)前來合作!
2、在edit.php里調(diào)用要修改的記錄,如果不會(huì)再問。
3、將調(diào)用的記錄數(shù)據(jù)填充到 edit.php的form里去。
4、將form的action改為action="edit_save.php"
5、把?php
$con=mysql_connect("localhost","root","");
if(!$con)
{
die('Coudl not connet:'.mysql_error());
}
mysql_select_db("my_db", $con);
mysql_query("UPDATE Persons SET Firstname='".$_POST["firstname"]."',
Lastname='".$_POST["lastname"]."',Password='".$_POST["password"]."',Age='".$_POST["age"]."'");
mysql_close($con);
echo "scriptwindow.location.href='1.php';/script ";
?保存為edit_save.php
分類: 電腦/網(wǎng)絡(luò) 程序設(shè)計(jì) 其他編程語言
問題描述:
將數(shù)據(jù)庫的數(shù)據(jù)查詢到嵌入在PHP中的EXCEL里面.實(shí)現(xiàn)多條紀(jì)錄的修改.
數(shù)據(jù)庫里面有幾萬條數(shù)據(jù),每天要修改幾百條,一條一條修改很麻煩,怎樣能夠,實(shí)現(xiàn)上面說的這種功能,然后可以批量修改.
解析:
可以選擇一些相關(guān)的,然后統(tǒng)一批量改
SQL Server 中直接可以把excel文件加載進(jìn)來當(dāng)作表處理。
使用Sql腳本怎么處理都可以了。
其他數(shù)據(jù)庫,那還有寫處理excel的代碼
你的數(shù)據(jù)在EXCEL里面,需要用PHP程序去修改它,因?yàn)槟愕臋C(jī)器上有WEB,你希望遠(yuǎn)程操作,對(duì)嗎?
其實(shí)不難,你在ODBC里面建立一個(gè)數(shù)據(jù)源,指向你的EXCEL文件,PHP寫程序用SQL操作ODBC數(shù)據(jù)源是很簡(jiǎn)單的,例子:
?PHP
$id=odbc_connect("ODBC數(shù)據(jù)源名稱","用戶名","密碼");
if ($id!=0){
$max_display_rec=500;
$query_str="任意的SQL語句";
$qu=odbc_exec($id,$query_str);
if ($qu) echo "執(zhí)行 $query_str 成功!";
else echo "執(zhí)行 $query_str 失敗!";
} else echo '數(shù)據(jù)庫連接失敗!
覺得你可以做這樣一個(gè)界面:
一個(gè)列表,每行前有一個(gè)復(fù)選框,讓用戶選中要修改的記錄
點(diǎn)擊提交后,將用戶所選的內(nèi)容以文本框的形勢(shì)顯示,如一頁不夠,可分頁。
當(dāng)用戶修改結(jié)束后,統(tǒng)一保存
表單頁面:
form action="login.php" method="post"
用戶名:input type="text" name="user" /br/
密 碼:input type="password" name="pass" /br/
button type="submit"登錄/button
/form
登錄處理頁面login.php
?php
mysql_connect(數(shù)據(jù)庫服務(wù)器,數(shù)據(jù)庫登錄用戶名,數(shù)據(jù)庫密碼);//建立臨時(shí)數(shù)據(jù)庫連接
mysql_select_db(數(shù)據(jù)庫名稱);
$user=$_POST['user'];//取得表單輸入的用戶名
$pass=$_POST['pass'];//取得表單輸入的密碼
$sql="select * from 數(shù)據(jù)表名稱 where user='$user'";//構(gòu)造Sql查詢語句
if(!mysql_query($sql)){//如果執(zhí)行Sql語句不成功
exit( '用戶名錯(cuò)誤');
}
$sql="select * from 數(shù)據(jù)表名稱 where user='$user' and pass='$pass'";//構(gòu)造Sql查詢語句
if(!mysql_query($sql)){//如果執(zhí)行Sql語句不成功
exit( '密碼錯(cuò)誤');
}
//這里寫登錄成功的邏輯代碼//
?
隨便寫了一下,沒測(cè)試。不見得一定能成功!
但格式語法差不多就是這樣,我只是想給你一個(gè)樣式而已!
具體你還要自己多多學(xué)習(xí)!
一、PHP操作MySql數(shù)據(jù)庫
新增數(shù)據(jù)
?php
$query
=
"INSERT
INTO
grade
(name,email,point,regdate)
VALUE
('
李三','yc60.com@gmail.com',,NOW())"
;
@mysql_query($query)
or
die(
'添加數(shù)據(jù)出錯(cuò):'
.mysql_error());
?
修改數(shù)據(jù)
?php
$query
=
"UPDATE
grade
SET
name='小可愛'
WHERE
id=6"
;
@mysql_query($query)
or
die(
'修改出錯(cuò):'
.mysql_error());
?
刪除數(shù)據(jù)
?php
$query
=
"DELETE
FROM
grade
WHERE
id=6";
@mysql_query($query)
or
die(
'刪除錯(cuò)誤:'
.mysql_error());
?
顯示數(shù)據(jù)
?php
$query
=
"SELECT
id,name,email,point
FROM
grade";
$result
=
@mysql_query($query)
or
die(
'查詢語句出錯(cuò):'
.mysql_error());
while
(!!
$row
=
mysql_fetch_array($result))
{
echo
$row[
'id'
].
'----'
.$row['name'
].'----'
.$row
['email'
].
'----'
.$row['point'
];
echo
'br
/
';
}
?
二、其他常用函數(shù)
mysql_f
etch_row()
:從結(jié)果集中取得一行作為枚舉數(shù)組
mysql_f
etch_assoc()
:
從結(jié)果集中取得一行作為關(guān)聯(lián)數(shù)組
mysql_f
etch_array()
:
從結(jié)果集中取得一行作為關(guān)聯(lián)數(shù)組,或數(shù)字?jǐn)?shù)組,或二者兼有
mysql_f
etch_lengths
()
:
取得結(jié)果集中每個(gè)輸出的長(zhǎng)度
mysql_f
ield_name():
取得結(jié)果中指定字段的字段名
mysql_num_rows():
取得結(jié)果集中行的數(shù)目
mysql_num_f
ields():取得結(jié)果集中字段的數(shù)目
mysql_get_client_inf
o()
:
取得
MySQL
客戶端信息
mysql_get_host_info():
取得
MySQL
主機(jī)信息
mysql_get_proto_info():
取得
MySQL
協(xié)議信息
mysql_get_server_inf
o()
:
取得
MySQL
服務(wù)器信息
舉例如下:
創(chuàng)建userinfo_update.php頁面用于查詢用戶信息,先顯示信息,在修改:
先通過GET獲取用戶編號(hào)查詢用戶信息:
$sql = "select * from user_info where user_id='".$_GET['userId']."'";
$result = mysql_query($sql,$con);
if($row = mysql_fetch_array($result)){
}
頁面效果:
創(chuàng)建update.php文件,用于修改用戶信息:
使用到了mysql_affected_rows() 函數(shù)返回前一次 MySQL 操作所影響的記錄行數(shù)。
//通過post獲取頁面提交數(shù)據(jù)信息
$userId = $_POST[userId];
$userName = $_POST[userName];
$userAge = $_POST[userAge];
$sql = "update user_info set user_name='".$userName."',user_age=".$userAge." where user_id='".$userId."'";
mysql_query($sql,$conn);//執(zhí)行SQL
$mark? = mysql_affected_rows();//返回影響行數(shù)
$url = "userinf_select.php";
運(yùn)行結(jié)果
創(chuàng)建delete.php文件,完成刪除用戶信息功能:
$userId = $_GET['userId'];
include 'connection.php';
$sql = "delete from user_info where user_id='".$userId."'";
mysql_query($sql,$con);
$mark? = mysql_affected_rows();//返回影響行數(shù)
if($mark0){
echo "刪除成功";
}else{
echo? "刪除失敗";
}
mysql_close($con);
運(yùn)行結(jié)果:
這個(gè)說起來長(zhǎng)篇,你所問的$updateSQL = $db-GetUpdateSQL其實(shí)并不是屬于php自己的東西,而是用戶自定義的類,至于類是什么去看看基礎(chǔ)的php語言基礎(chǔ).
所以你要知道GetUpdateSQL返回的究竟是什么東西,他是怎么工作的,就要找到類的本身代碼所在文件,去看看他里面究竟是什么東西.
而php修改數(shù)據(jù)庫里的東西其實(shí)是沒有專用語句的.如果硬要問怎么實(shí)現(xiàn)的話,就是那個(gè)$db-Execute($updateSQL);
所以建議你把$updateSQL print(或echo)出屏幕看看里面是什么就明白了.
其實(shí)是個(gè)SQL的操作語句,指示SQL如何存儲(chǔ)數(shù)據(jù),而$db-Execute只讓php把這個(gè)命令傳給SQL