首先搭建一個(gè)PHP環(huán)境,我用的wamp
創(chuàng)新互聯(lián)建站提供成都做網(wǎng)站、成都網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計(jì),品牌網(wǎng)站建設(shè),1元廣告等致力于企業(yè)網(wǎng)站建設(shè)與公司網(wǎng)站制作,十余年的網(wǎng)站開發(fā)和建站經(jīng)驗(yàn),助力企業(yè)信息化建設(shè),成功案例突破數(shù)千家,是您實(shí)現(xiàn)網(wǎng)站建設(shè)的好選擇.
然后比如你的數(shù)據(jù)庫位置是本地localhost
數(shù)據(jù)庫用戶名是root
數(shù)據(jù)庫密碼是123456
數(shù)據(jù)庫名是mydb
數(shù)據(jù)庫里有個(gè)表mytab
有3個(gè)字段
id(主鍵) name sno
1 張三 123
2 李四 456
然后在項(xiàng)目根目錄,新建一個(gè)文件:index.php
?php
//連接數(shù)據(jù)庫
$con=mysqli_connect("localhost","root","123456","mydb");
//SQL語句
$sql="select * from mytab;";
//執(zhí)行SQL語句,結(jié)果保存到$arr
$obj=mysqli_query($con,$sql);
$arr=mysqli_num_rows($result);
?
html
head
meta http-equiv="Content-Type" content="text/html; charset=UTF-8"
title實(shí)現(xiàn)最簡單的php網(wǎng)頁+mysql查詢功能/title
/head
body
?php
echo "pre";
print_r($obj);
?
/body
/html
之后就能夠看到結(jié)果了
可以參看discuz數(shù)據(jù)庫表帖子,和帖子附件的設(shè)計(jì),我的大概思路是這樣的:
首先建立一個(gè)數(shù)據(jù)表"film"用來保存簡短文字信息,其中包含:電影發(fā)布時(shí)有名字,主演,簡介,歸屬欄目,發(fā)布電影的URL鏈接。在創(chuàng)建一個(gè)表(考慮到是小型網(wǎng)站,如果中型的話,可以選擇10個(gè),像discuz一樣)"attachement",用來保存,上傳截圖,上傳視頻。這個(gè)表用一個(gè)外鍵與film表連接。中間在外鍵上加索引。
希望我的回答對(duì)你有幫助!
使用EclipsePHP Studio 3 創(chuàng)建一個(gè)PHP工程名稱為test1,在工程名下面userinfo的文件夾,然后在文件夾創(chuàng)建一個(gè)PHP文件(userinfo_create.php):
2
打開我們創(chuàng)建PHP文件:
先設(shè)置 地址,賬號(hào),密碼:
$url = "127.0.0.1";//連接數(shù)據(jù)庫的地址
$user = "root"; //賬號(hào)
$password = "root";//密碼
//獲取連接$con = mysql_connect($url,$user,$password);
if(!$con){
die("連接失敗".mysql_error());
}
3
設(shè)置具體連接的數(shù)據(jù),那我們這兒連接test數(shù)據(jù)庫,我們通過Navicat 打開mysql 數(shù)據(jù)庫
mysql_select_db("test");
你做好程序以后,把數(shù)據(jù)庫導(dǎo)出成sql文件
1、連接數(shù)據(jù)庫
2、讀取這個(gè)sql文件里的sql語句,并執(zhí)行
3、生成一個(gè)數(shù)據(jù)庫連接參數(shù)的php文件
?php
$con?=?mysql_connect("localhost","peter","abc123");
if?(!$con)
{
die('Could?not?connect:?'?.?mysql_error());
}
if?(mysql_query("CREATE?DATABASE?my_db",$con))
{
echo?"Database?created";
}
else
{
echo?"Error?creating?database:?"?.?mysql_error();
}
mysql_close($con);
?
?php
class?ReadSql?{
//數(shù)據(jù)庫連接
protected?$connect?=?null;
//數(shù)據(jù)庫對(duì)象
protected?$db?=?null;
//sql文件
public?$sqlFile?=?"";
//sql語句集
public?$sqlArr?=?array();
public?function?__construct($host,?$user,?$pw,?$db_name)?{
$host?=?empty($host)???C("DB_HOST")?:?$host;
$user?=?empty($user)???C("DB_USER")?:?$user;
$pw?=?empty($pw)???C("DB_PWD")?:?$pw;
$db_name?=?empty($db_name)???C("DB_NAME")?:?$db_name;
//連接數(shù)據(jù)庫
$this-connect?=?mysql_connect($host,?$user,?$pw)?or?die("Could?not?connect:?"?.?mysql_error());
$this-db?=?mysql_select_db($db_name,?$this-connect)?or?die("Yon?can?not?select?the?table:"?.?mysql_error());
}
//導(dǎo)入sql文件
public?function?Import($url)?{
$this-sqlFile?=?file_get_contents($url);
if?(!$this-sqlFile)?{
exit("打開文件錯(cuò)誤");
}?else?{
$this-GetSqlArr();
if?($this-Runsql())?{
return?true;
}
}
}
//獲取sql語句數(shù)組
public?function?GetSqlArr()?{
//去除注釋
$str?=?$this-sqlFile;
$str?=?preg_replace('/--.*/i',?'',?$str);
$str?=?preg_replace('/\/\*.*\*\/(\;)?/i',?'',?$str);
//去除空格?創(chuàng)建數(shù)組
$str?=?explode(";\n",?$str);
foreach?($str?as?$v)?{
$v?=?trim($v);
if?(empty($v))?{
continue;
}?else?{
$this-sqlArr[]?=?$v;
}
}
}
//執(zhí)行sql文件
public?function?RunSql()?{
foreach?($this-sqlArr?as?$k?=?$v)?{
if?(!mysql_query($v))?{
exit("sql語句錯(cuò)誤:第"?.?$k?.?"行"?.?mysql_error());
}
}
return?true;
}
}
//范例:
header("Content-type:text/html;charset=utf-8");
$sql?=?new?ReadSql("localhost",?"root",?"",?"log_db");
$rst?=?$sql-Import("./log_db.sql");
if?($rst)?{
echo?"Success!";
}
?
1. 嘗試設(shè)置一個(gè)頁面模板
1)拷貝一個(gè)index.php并改名為其它名,如list.php;
2)在list.php頁面最頂部添加
?php /*
Template Name: 友鏈
*/
?
以上兩步就可以創(chuàng)建一個(gè)頁面模板了,修改并保存好這個(gè)文件后,創(chuàng)建一個(gè)新頁面或者修改已存在的頁面。在右下邊有個(gè)“頁面模板”的面板,在下拉菜單中選中“友鏈”后保存就可以了。
然后在頁面中添加任何內(nèi)容,包括html代碼就可以顯示了??墒俏业男枨笫且约和瓿蒔HP代碼獲取數(shù)據(jù)并展示,它不能這么做。
2. 調(diào)用 WordPress 的 API實(shí)現(xiàn)URL正確跳轉(zhuǎn)
這種方法的自由度較高,并且可以創(chuàng)建非WordPress格式的URL。比如我們要把 轉(zhuǎn)交給主題文件夾下的 /custom/list.php 來處理,就可以用這種方式來處理。這種方法用到 template redirect 鉤子,template redirect 是 WordPress 在預(yù)處理好所有參數(shù)設(shè)置之后決定調(diào)用主題模板的時(shí)候調(diào)用的。
在functions.php模板函數(shù)文件中添加以下實(shí)例代碼:
function loadCustomTemplate($template) {
global $wp_query;
if(!file_exists($template))return;
$wp_query-is_page = true;
$wp_query-is_single = false;
$wp_query-is_home = false;
$wp_query-comments = false;
// if we have a 404 status
if ($wp_query-is_404) {
// set status of 404 to false
unset($wp_query-query["error"]);
$wp_query-query_vars["error"]="";
$wp_query-is_404=false;
}
// change the header to 200 OK
header("HTTP/1.1 200 OK");
//load our template
include($template);
exit;
}
function templateRedirect() {
$basename = basename($_SERVER['REQUEST_URI'], '?' . $_SERVER['QUERY_STRING']);
loadCustomTemplate(TEMPLATEPATH.'/custom/'."/$basename.php");
}
add_action('template_redirect', 'templateRedirect');
這樣就實(shí)現(xiàn)了 WordPress 查找 /custom 文件夾下的 php 文件,并且將相匹配的 URL 請(qǐng)求轉(zhuǎn)交給對(duì)應(yīng)的 php 文件來處理的效果,與此同時(shí),這個(gè) php 文件還保持了對(duì) WordPress API 的調(diào)用,因此留給我們的空間非常大。
接下來就可以在 /custom 文件夾下自定義一個(gè)list.php文件然后通過鏈接訪問。
3. 添加頁面內(nèi)容,獲取自定義數(shù)據(jù)庫/表中的內(nèi)容
然后就可以根據(jù)需要自己需要來實(shí)現(xiàn)自己想要的功能,這里需要有以下幾點(diǎn)要處理:
1)如何操作數(shù)據(jù)庫
WordPress提供了一個(gè)全局變量$wpdb,并將其實(shí)例化為wpdb類的對(duì)象。這樣我們就可以直接使用$wpdb來調(diào)用所有的數(shù)據(jù)庫操作函數(shù)。通過這個(gè)$wpdb對(duì)象,我們可以對(duì)WordPress數(shù)據(jù)庫進(jìn)行任何操作,包括建表、查詢、刪除、更新等。使用$wpdb-get_results實(shí)現(xiàn)執(zhí)行sql語句操作數(shù)據(jù)庫,并獲取結(jié)果。
global $wpdb;
$sql= "SELECT * FROM ".$wpdb-prefix.table;
$a = $wpdb-get_results($sql);