首先,沒有數(shù)據(jù)庫是能夠建立連接的,但這只是和mysql服務器相連,而不是和某個具體的數(shù)據(jù)庫,所以,這樣的連接,意義不大(不知道你用什么操作mysql,所以沒有給出具體連接字符串)
創(chuàng)新互聯(lián)公司主要從事成都做網(wǎng)站、成都網(wǎng)站設計、網(wǎng)頁設計、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務。立足成都服務川匯,十載網(wǎng)站建設經(jīng)驗,價格優(yōu)惠、服務專業(yè),歡迎來電咨詢建站服務:18982081108
你如果建立好了連接,判斷數(shù)據(jù)庫是否存在就簡單了
因為mysql中有一個數(shù)據(jù)庫information_schema(這應該是你知道的),而這張數(shù)據(jù)庫中有一張表schemata,是用來存儲其他數(shù)據(jù)庫信息的,你用
select
schema_name
from
schemata;
查詢一下,所有的數(shù)據(jù)庫就出來了。
p.s.
我不知道你用的什么和mysql相連的,所以,告訴你的都是通用的方法。如果有問題,再hi我
外部的循環(huán)條件
while($row = $dosql-GetArray())
二級循環(huán)的條件
while($row2 = $dosql-GetArray()){
?
LI style="width:100px; height:30px; float:left;"?php echo $row2['S_name']; ?/LI
二級循環(huán)出來后$dosql-GetArray()肯定是假,當然只循環(huán)一次了
MySQL Update Set 更新數(shù)據(jù)
UPDATE 更新
UPDATE SET 語法用于修改更新數(shù)據(jù)表中的數(shù)據(jù)。
語法:
UPDATE tb_name SET column1 = new_value1,column2 = new_value2,… WHERE definition
該語法將數(shù)據(jù)表中符合 WHERE 條件的記錄中的 column1 的值更新為 new_value1,column2 的值更新為 new_value2 ,以此類推。如果省略 WHERE 條件,則會將表中所有記錄的 column 值進行更新。
例子:
?php
$conn = @mysql_connect("localhost","root","root123");
if (!$conn){
die("連接數(shù)據(jù)庫失敗:" . mysql_error());
}
mysql_select_db("test", $conn);
mysql_query("set names 'gbk'");
$sql = "UPDATE user SET email = 'xiaoming@163.com' WHERE username = '小明'";
if(mysql_query($sql,$conn)){
echo "更新數(shù)據(jù)成功!";
} else {
echo "更新數(shù)據(jù)失敗:".mysql_error();
}
?
更新前數(shù)據(jù):
uid username password email regdate
1 admin b7e591c246d010bb2ccd77d52490c85e admin@5idev.com 1277992339
2 小明 a193686a53e4de85ee3f2ff0576adf01 xiao@163.com 1278063917
3 Jack 0193686a35e4de85ee3f2ff0567adf49 jack@gmail.com 1278061380
4 小王 e10adc3949ba59abbe56e057f20f883e 12345@163.com 1289632955
例子將 user 表中 username 為 小明 的 email 修改為 xiaoming@163.com 。
更新后數(shù)據(jù):
uid username password email regdate
1 admin b7e591c246d010bb2ccd77d52490c85e admin@5idev.com 1277992339
2 小明 a193686a53e4de85ee3f2ff0576adf01 xiaoming@163.com 1278063917
3 Jack 0193686a35e4de85ee3f2ff0567adf49 jack@gmail.com 1278061380
4 小王 e10adc3949ba59abbe56e057f20f883e 12345@163.com 1289632955
UPDATE 表達式
UPDATE 語法允許 SET 后面跟表達式。
例子 1 :
UPDATE article SET pv = pv+1 WHERE id = 123
該例子讓 id 為 123 的文章在被點擊閱讀的時候點擊量加 1 。
例子 2 :
UPDATE persondata SET age = age*2, age = age+1
該例子 SET 后面跟了兩個表達式:age = age*2(年齡加倍),age = age+1(再加 1 )。這種多個表達式的情況,是按照從左往右順序執(zhí)行的。
!--表單文件,拷入index.php--
!DOCTYPE?html
html
head
style
label{display:inline-block;width:100px;margin-bottom:10px;}
/style
titleAdd?students/title
/head
body
!--?數(shù)據(jù)庫用mysqli?面向過程調(diào)用方法--
form?method="post"?action="write2db.php"
!--數(shù)據(jù)庫用mysqli?面向過程調(diào)用方法
form?method="post"?action="write2db_sqlio.php"
--
!--數(shù)據(jù)庫用PDO調(diào)用方法
form?method="post"?action="write2db_pdo.php"
--
labelFirst?Name/label
input?type="text"?name="first_name"?/
br?/
labelLast?Name/label
input?type="text"?name="last_name"?/
br?/
labeldepartment/label
input?type="text"?name="department"?/
br?/
labelEmail/label
input?type="text"?name="email"?/
br?/
input?type="submit"?value="Add?students"
/form
/body
/html
------------------------------
?php
//拷貝命名為write2db.php,數(shù)據(jù)庫用mysqli?面向過程調(diào)用方法
//print_r($_POST);
//?create?a?variable
$first_name=$_POST['first_name'];
$last_name=$_POST['last_name'];
$department=$_POST['department'];
$email=$_POST['email'];
//調(diào)試用
echo?"Your?input:?";
echo?$first_name;
echo?'br?/';
echo?$last_name;
echo?'br?/';
echo?$department;
echo?'br?/';
echo?$email;
echo?'br?/';
$servername?=?"localhost";
//Your?database?username?and?password
//$username?=?"username";
//$password?=?"password";
$username?=?"tester";
$password?=?"testerPassword";
//your?database?name
$dbname?=?"test";
$tablename?="student";
//?Create?connection
$connect?=?mysqli_connect($servername,?$username,?$password,?$dbname);
if?(!$connect)?{
die("Connection?failed:?"?.?mysqli_connect_error());
}
//Execute?the?query
$sql="INSERT?INTO?$tablename?(first_name,last_name,department,email)
VALUES('$first_name','$last_name','$department','$email')";
if?(mysqli_query($connect,?$sql))?{
echo?"Hooray!?New?record?is?inserted?to?database?successfully.?Please?check?database.";
}?else?{
echo?"Error:?"?.?$sql?.?"br?/"?.?mysqli_error($connect);
}
mysqli_close($connect);
?
?php
//拷貝命名為write2db_sqlio.php,數(shù)據(jù)庫用mysqli?面向?qū)ο笳{(diào)用方法
//print_r($_POST);
//?create?a?variable
$first_name=$_POST['first_name'];
$last_name=$_POST['last_name'];
$department=$_POST['department'];
$email=$_POST['email'];
//調(diào)試用
echo?"Your?input:?";
echo?$first_name;
echo?'br?/';
echo?$last_name;
echo?'br?/';
echo?$department;
echo?'br?/';
echo?$email;
echo?'br?/';
$servername?=?"localhost";
//Your?database?username?and?password
//$username?=?"username";
//$password?=?"password";
$username?=?"tester";
$password?=?"testerPassword";
//database?name
$dbname?=?"test";
$tablename?="student";
//?Create?connection
$conn?=?new?mysqli($servername,?$username,?$password,?$dbname);
//?Check?connection
if?($conn-connect_error)?{
die("Connection?failed:?"?.?$conn-connect_error);
}?
$sql="INSERT?INTO?$tablename?(first_name,last_name,department,email)
VALUES('$first_name','$last_name','$department','$email')";
if?($conn-query($sql)?===?TRUE)?{
echo?"New?record?created?successfully";
}?else?{
echo?"Error:?"?.?$sql?.?"br"?.?$conn-error;
}
$conn-close();
?
?php
//拷貝為文件write2db_pdo.php,數(shù)據(jù)庫用PDO調(diào)用方法
//print_r($_POST);
a?variable
$first_name=$_POST['first_name'];
$last_name=$_POST['last_name'];
$department=$_POST['department'];
$email=$_POST['email'];
//調(diào)試用
echo?"Your?input:?";
echo?$first_name;
echo?'br?/';
echo?$last_name;
echo?'br?/';
echo?$department;
echo?'br?/';
echo?$email;
echo?'br?/';
$servername?=?"localhost";
//Your?database?username?and?password
//$username?=?"username";
//$password?=?"password";
$username?=?"tester";
$password?=?"testerPassword";
//your?database?name
$dbname?=?"test";
$tablename?="student";
//?Create?connection
try?{
$conn?=?new?PDO("mysql:host=$servername;dbname=$dbname",?$username,?$password);
//?set?the?PDO?error?mode?to?exception
$conn-setAttribute(PDO::ATTR_ERRMODE,?PDO::ERRMODE_EXCEPTION);
$sql="INSERT?INTO?$tablename?(first_name,last_name,department,email)
VALUES('$first_name','$last_name','$department','$email')";
//?use?exec()?
$conn-exec($sql);
echo?"New?record?created?successfully";
}
catch(PDOException?$e)
{
echo?$sql?.?"br"?.?$e-getMessage();
}
$conn?=?null;
?
--創(chuàng)建數(shù)據(jù)庫test,?將此文件存為test.sql?導入數(shù)據(jù)庫,或者手動創(chuàng)建表結(jié)構(gòu)
--?phpMyAdmin?SQL?Dump
--?version?4.7.4
--?
--
--?Host:?127.0.0.1:3306
--?Generation?Time:?Mar?12,?2018?at?04:04?AM
--?Server?version:?5.7.19
--?PHP?Version:?7.1.9
SET?SQL_MODE?=?"NO_AUTO_VALUE_ON_ZERO";
SET?AUTOCOMMIT?=?0;
START?TRANSACTION;
SET?time_zone?=?"+00:00";
/*!40101?SET?@OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT?*/;
/*!40101?SET?@OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS?*/;
/*!40101?SET?@OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION?*/;
/*!40101?SET?NAMES?utf8mb4?*/;
--
--?Database:?`test`
--
--?--------------------------------------------------------
--
--?Table?structure?for?table?`student`
--
DROP?TABLE?IF?EXISTS?`student`;
CREATE?TABLE?IF?NOT?EXISTS?`student`?(
`id`?tinyint(3)?UNSIGNED?NOT?NULL?AUTO_INCREMENT,
`first_name`?varchar(20)?NOT?NULL,
`last_name`?varchar(20)?NOT?NULL,
`department`?varchar(50)?NOT?NULL,
`email`?varchar(50)?NOT?NULL,
PRIMARY?KEY?(`id`)
)?ENGINE=MyISAM?AUTO_INCREMENT=2?DEFAULT?CHARSET=utf8;
--
--?Dumping?data?for?table?`student`
--
INSERT?INTO?`student`?(`id`,?`first_name`,?`last_name`,?`department`,?`email`)?VALUES
(1,?'first1',?'last1',?'cs',?'1985@qq.com');
COMMIT;
/*!40101?SET?CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT?*/;
/*!40101?SET?CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS?*/;
/*!40101?SET?COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION?*/;
你可以把連接的方法寫進類里,讓它形成方法比如
class something {
global $db;
function web_db(){
$this-db = $this-database(); //把連接方法存如屬性里
}
function database($server = 'localhost',$root = 'root',$pass = '****'){
......//這里寫你的連接方法,及其關(guān)聯(lián)表操作
}
...//其他方法
} //class end
在你的頁面程序中這樣寫
require_once "web_common.class.php";//包進你的類文件
$mysql = new something;
在你需要數(shù)據(jù)查詢或?qū)懭氲臅r候只要調(diào)用 $mysql-db;就好了
如上你可以看出,無論你有多少客戶請求數(shù)據(jù)庫,而數(shù)據(jù)庫只在載入頁面時連接一次而已,調(diào)用 $mysql-db 只是請求程序,請求方法而已,沒有請求數(shù)據(jù)庫。第一,數(shù)據(jù)庫連接查詢只有一次;第二無形中也加快了頁面的載入速度。
記住,你做網(wǎng)頁不是給一個人兩個人用的,而是很很很多個,為了保證數(shù)據(jù)庫的正常使用,在多請求的情況下依然能很好工作,這是個很好的辦法。
最后close是可寫可不寫的,因為當mysql沒有請求時,它會自動關(guān)閉。
select
*
from
kj_meal_shop
where
shop_name
like
'%$searchs%'
變量search
前面多個,號,先去掉
沒有結(jié)果是因為,你有那個逗號,沒找到,去掉逗號,也沒找到,是因為$query是個資源,你還得用while($row=mysql_fetch_assoc($query)){
$search[]
=
$row;
}
外邊打印$search
新聞標題:php做sqml數(shù)據(jù)庫 Php連接數(shù)據(jù)庫
文章網(wǎng)址:http://vcdvsql.cn/article34/hepese.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供營銷型網(wǎng)站建設、小程序開發(fā)、企業(yè)建站、企業(yè)網(wǎng)站制作、網(wǎng)站設計、定制網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)