當前位置:ag真人国际官网-ag旗舰厅官方网站 » 操作系統 » php經典實例源碼

php經典實例源碼-ag真人国际官网

發布時間: 2024-07-05 16:42:34

1. php多國語言源碼

這個應該說你看到的開源代碼質量問題,很多知名的開源產品都是多語言的,如magento, joomla, wordpress, drupal等等等等。
至於語言切換問題,一種可能是你使用的開源產品不支持,不過更多的可能是示例代碼沒有實現這個功能。檢查一個開源產品是不是支持多語言通常只要看看源碼中是不是有language或者類似的目錄就知道了。
關於如何實現語言切換,一個簡單的流程如下:
1- 點擊頁頭的切換語言按鈕
2- 觸發一個ajax請求,將要切換的語言通知php端
3- php端用新的語言代碼(如zh-cn)保存到session中取代原先的值(如_session['language']='en')
4- ajax請求完成後觸發回調函數
5- 回調函數刷新當前頁
示例





include ("menu.php");
?>

瀏覽學生信息











// 1. 鏈接資料庫
try{
$pdo = new pdo("uri:mysqlpdo.ini","root","1");
}catch (pdoexception $e) {
die('connection failed'.$e->getmessage());
}
//2.執行sql
$sql_select = "select * from stu";
//3.data 解析
foreach ( $pdo->query($sql_select) as $row) {
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
echo "";
}
?>
id 姓名 性別 年齡 班級 操作
{$row['id']} {$row['name']}{$row['sex']} {$row['age']} {$row['classid']}







2. add.php




學生管理系統





增加學生信息



























姓名
年齡
性別
班級
ag真人国际官网-ag旗舰厅官方网站







3. action.php
/**
* created by phpstorm.
* user: hyh
* date: 16-7-7
* time: 下午9:37
*/
//1. 鏈接資料庫
try{
$pdo = new pdo("uri:mysqlpdo.ini","root","1");
}catch (pdoexception $e) {
// echo 'connection failed: ' . $e->getmessage();
die('connection failed'.$e->getmessage());
}

//2.action 的值做對操作

switch ($_get['action']){

case 'add'://add
$name = $_post['name'];
$sex = $_post['sex'];
$age = $_post['age'];
$classid = $_post['classid'];

$sql = "insert into stu (name, sex, age, classid) values ('{$name}', '{$sex}','{$age}','{$classid}')";
$rw = $pdo->exec($sql);
if ($rw > 0){
echo "";
}else{
echo "";
}
header('location: index.php');
break;

case 'del'://get
$id = $_get['id'];
$sql = "delete from stu where id={$id}";
$rw = $pdo->exec($sql);
if ($rw > 0){
echo "";
}else{
echo "";
}
header('location: index.php');
break;

case 'edit'://post
$id = $_post['id'];
$name = $_post['name'];
$age = $_post['age'];
$classid = $_post['classid'];
$sex = $_post['sex'];

// echo $id, $age, $age, $name;
$sql = "update stu set name='{$name}', age={$age},sex='{$sex}',classid={$classid} where id={$id};";
// $sql = "update myapp.stu set name='jike',sex='女', age=24,classid=44 where id=17";
print $sql;
$rw = $pdo->exec($sql);
if ($rw > 0){
echo "";
}else{
echo "";
}
header('location: index.php');
break;

default:
header('location: index.php');
break;
}

4.edit.php




學生管理系統



//1. 鏈接資料庫
try{
$pdo = new pdo("uri:mysqlpdo.ini","root","1");
}catch (pdoexception $e) {
die('connection failed'.$e->getmessage());
}
//2.執行sql
$sql_select = "select * from stu where id={$_get['id']}";
$stmt = $pdo->query($sql_select);
if ($stmt->rowcount() >0) {
$stu = $stmt->fetch(pdo::fetch_assoc); // 解析數據
}else{
die("no have this id:{$_get['id']}");
}
?>

修改學生信息




























姓名
年齡
性別
>男

>女
班級





?>



5. menu.php




學生管理系統


ag真人国际官网-ag旗舰厅官方网站




4. php上傳圖片函數源碼(重金懸賞)

//$_files['myfile']['tmp_name'] 儲存的臨時文件名,一般是系統默認
//is_uploaded_file()判斷上傳是否有內容
if(is_uploaded_file($_files['banner']['tmp_name'])){
//$_files["banner"]把上傳的內容存到一個數組中,並復制給$upfile
$upfile = $_files["banner"];
//可以通過print_r($upfile);查看數據的詳細內容
$name = $upfile["name"];
$type = $upfile["type"];
$size = $upfile["size"];
$tmp_name = $upfile["tmp_name"];
$error = $upfile["error"];
//switch循環用來為變數$ok賦值,如果圖片的格式$type(實際上就是文件的擴展名)滿足格式要求(循環里的case就是用來控制格式),那麼$ok = 1,以便下邊程序進行判斷

switch($type){
case 'image/pjpeg': $ok = 1 ;
break;
case 'image/jpeg': $ok = 1 ;
break;
case 'image/gif': $ok = 1 ;
break;
case 'image/png': $ok = 1 ;
break;
}

if($ok&&$error=='0'){
//move_uploaded_file(臨時文件,目標位置和文件名)
move_uploaded_file($tmp_name,'../up/'.$name);
echo "恭喜!上傳成功";
}
if(!$ok){
echo "抱歉!文件格式不正確";
}
}

?>


上傳文件:



/*form標簽enctype屬性
表單中enctype="multipart/form-data"的意思,是設置表單的mime編碼。默認情況,這個編碼格式是application/x-www-form-urlencoded,不能用於文件上傳;只有使用了multipart/form-data,才能完整的傳遞文件數據
*/

5. 求幾個xml php的源碼,越簡單越好

兩個,第二個簡單一點
1、xml php動態載入與分頁

//$this->iglobal($vars,$cookie);
$this->output($vars,$cookie);
}

//function _shoplist_res(){
// $this->db->close();
//}
function output($vars,$cookie){
/*$strquery = "select count(*) as rc from ".$this->db_c->db_pre."pshop order by id desc";
$this->db->query($strquery);
$recordcount = $this->db->assoc();
$recordcount = $recordcount['rc'];
@$this->db->freeresult();*/
$recordcount = 25;
if (empty($vars['pageno'])) $vars['pageno']= 1;
if (empty($vars['pagesize'])) $vars['pagesize']= 10;
$pagecount = ceil($recordcount/$vars['pagesize']);
if ($vars['pagesize']>$recordcount) $vars['pagesize']=$recordcount;
if ($vars['pageno']>$pagecount) $vars['pageno']=$pagecount;
$xmlstr.= ""."\n";
$xmlstr.= "<商鋪列表>"."\n";
$xmlstr.= "\t<翻頁工具 pageno=\"".$vars['pageno']."\" pagesize=\"".$vars['pagesize']."\" total=\"".$recordcount."\">"."\n";
$xmlstr.= "\t<頁號碼>".$vars['pageno'].""."\n";
$xmlstr.= "\t<頁大小>".$vars['pagesize'].""."\n";
$xmlstr.= "\t<數量>".$recordcount.""."\n";
$xmlstr.= "\t<頁數量>".$pagecount.""."\n";
//$strquery = "select t1.*,t2.* from ".$this->db_c->db_pre."pshop as t1,".$this->db_c->db_pre."shoptype as t2 where t1.typenum=t2.typenum order by id desc "
// ."limit ".($vars['pageno']-1)*$vars['pagesize'].",".$vars['pagesize'];
//die($strquery);
//$this->db->query($strquery);
/*while($result = $this->db->assoc()){
$xmlstr.= "\t"."\n";
$xmlstr.= "\t<商鋪>"."\n";
$xmlstr.= "\t\t<名稱>"."\n";
$xmlstr.= "\t\t<經營人>"."\n";
$xmlstr.= "\t\t<級別>"."\n";
$xmlstr.= "\t\t<簡介>"."\n";
$xmlstr.= "\t\t<連接地址>"."\n";
$xmlstr.= "\t"."\n";
}*/
$sc= $vars['pageno']*$vars['pagesize'];
if ($sc>$recordcount) $sc = $recordcount;
for($i=($vars['pageno']-1)*$vars['pagesize'];$i<$sc;$i ){
$xmlstr.= "\t"."\n";
$xmlstr.= "\t<商鋪>"."\n";
$xmlstr.= "\t\t<名稱>"."\n";
$xmlstr.= "\t\t<經營人>"."\n";
$xmlstr.= "\t\t<級別>"."\n";
$xmlstr.= "\t\t<簡介>"."\n";
$xmlstr.= "\t\t<連接地址>"."\n";
$xmlstr.= "\t"."\n";
}
$xmlstr.= ""."\n";
header("content-type: text/xml\n\n");
echo $xmlstr;
}
}

$shoplist = new shoplist_res($vars,$http_cookie_vars);
//$shoplist->_shoplist_res();
unset($sthoplist);
?>

2、用php讀取xml數據

$parser = xml_parser_create(); //創建一個parser編輯器
xml_set_element_handler($parser, "startelement", "endelement");//設立標簽觸發時的相應函數 這里分別為startelement和endelenment
xml_set_character_data_handler($parser, "characterdata");//設立數據讀取時的相應函數
$xml_file="1.xml";//指定所要讀取的xml文件,可以是url
$filehandler = fopen($xml_file, "r");//打開文件

while ($data = fread($filehandler, 4096))
{
xml_parse($parser, $data, feof($filehandler));
}//每次取出4096個位元組進行處理

fclose($filehandler);
xml_parser_free($parser);//關閉和釋放parser解析器

$name=false;
$position=false;
function startelement($parser_instance, $element_name, $attrs) //起始標簽事件的函數
{
global $name,$position;
if($element_name=="name")
{
$name=true;
$position=false;
echo "名字:";
}
if($element_name=="position")
{$name=false;
$position=true;
echo "職位:";
}
}

function characterdata($parser_instance, $xml_data) //讀取數據時的函數
{
global $name,$position;
if($position)
echo $xml_data."
";
if($name)
echo $xml_data."
";
}

function endelement($parser_instance, $element_name) //結束標簽事件的函數
{
global $name,$position;
$name=false;
$position=false;
}

?>
xml文件代碼如下:




張三
經理



李四
助理

6. 求簡單的php提交信息源碼

補充下:要使的php的mail函數可以使用,必須安裝有sendmail程序,或者qmail等程序.
再調用程序源碼:
$to = '[email protected]';
$subject = 'the subject';
$message = 'hello';
$headers = 'from: [email protected]' . "\r\n" .
'reply-to: [email protected]' . "\r\n" .
'x-mailer: php/' . phpversion();

mail($to, $subject, $message, $headers);
?>
來實現發信功能

7. 求php實現登錄成功後返回首頁並在原登錄處顯示用戶名的源代碼(類似於鐵血網的登錄)

session_start();//用session記錄模式,並開啟。
//用戶登錄信息,並記錄
if(@$_post['golog']){
$_session['user']=@$_post['login'];
}
//主頁的檢查用戶登錄與否,並顯示歡迎信息
if(@$_session['user']==''){
echo"目前沒有登錄";
}else{
echo$_session['user']."歡迎你的回來!";
}
?>



我只是給你寫了個原理,你可以加入更多的判斷。

熱點內容
resin下jsp不能正常編譯 發布:2024-07-17 16:34:44 瀏覽:229
sqlserver如何切換主備伺服器 發布:2024-07-17 16:23:02 瀏覽:299
mc18伺服器ip 發布:2024-07-17 16:23:02 瀏覽:379
仙境傳說手游腳本 發布:2024-07-17 16:09:24 瀏覽:691
matlab命令窗口和新建腳本 發布:2024-07-17 15:51:26 瀏覽:375
建ftp文件夾 發布:2024-07-17 15:51:26 瀏覽:955
魔獸撿物腳本 發布:2024-07-17 15:27:56 瀏覽:130
開發ip伺服器 發布:2024-07-17 15:24:42 瀏覽:388
安卓系統視頻製作哪個好用 發布:2024-07-17 15:10:47 瀏覽:210
androidapk結構 發布:2024-07-17 15:10:43 瀏覽:945
网站地图