㈠ 剛開始自學php,想問一下php連接資料庫主要用什麼技術,有沒有類似java中的jdbc,hibernate之類的。
有啊。PDO。
連接資料庫很方便的。
基本上都是寫好了類。直接調用就行了
你網路一下就能找到蠻多的。當然你也可以自己寫一個順手用。
不過初學還是建議你先自己多手寫一些原生函數吧。
㈡ PHP網站怎麼連接到資料庫
常規方式
常規方式就是按部就班的讀取文件了。其餘的話和上述方案一致。
// 讀取配置文件內容
$handle = fopen("filepath", "r"); $content = fread($handle, filesize("filepath"));123
PHP解析XML
上述兩種讀取文件,其實都是為了PHP解析XML來做准備的。關於PHP解析XML的方式的博客有很多。方式也有很多,像simplexml,XMLReader,DOM啦等等。但是對於比較小型的xml配置文件,simplexml就足夠了。
配置文件
<?xml version="1.0" encoding="UTF-8" ?><mysql>
<!-- 為防止出現意外,請按照此標准順序書寫.其實也無所謂了 -->
<host>localhost</host>
<user>root</user>
<password>123456</password>
<db>test</db>
<port>3306</port></mysql>12345678910
解析
<?php/**
* 作為解析XML配置文件必備工具
*/class XMLUtil {
public static $dbconfigpath = "./db.config.xml"; public static function getDBConfiguration() {
$dbconfig = array (); try { // 讀取配置文件內容
$handle = fopen(self::$dbconfigpath, "r"); $content = fread($handle, filesize(self::$dbconfigpath)); // 獲取xml文檔根節點,進而獲取相關的資料庫信息
$mysql = simplexml_load_string($content); // 將獲取到的xml節點信息賦值給關聯數組,方便接下來的方法調用
$dbconfig['host'] = $mysql->host; $dbconfig['user'] = $mysql->user; $dbconfig['password'] = $mysql->password; $dbconfig['db'] = $mysql->db; $dbconfig['port'] = $mysql->port; // 將配置信息以關聯數組的形式返回
return $dbconfig;
} catch ( Exception $e ) { throw new RuntimeException ( "<mark>讀取資料庫配置文件信息出錯!</mark><br />" );
} return $dbconfig;
}
}
資料庫連接池
對於PHP程序而言,優化永無止境。而資料庫連接池就在一定程度上起到了優化的作用。其使得對用戶的每一個請求而言,無需每次都像資料庫申請鏈接資源。而是通過已存在的資料庫連接池中的鏈接來返回,從時間上,效率上,都是一個大大的提升。
於是,這里簡單的模擬了一下資料庫連接池的實現。核心在於維護一個「池」。
從池子中取,用畢,歸還給池子。
<?php/**x
* PHP中的資料庫 工具類設計
* 郭璞
* 2016年12月23日
*
**/class DbHelper { private $dbconfig; private $dbpool; public $poolsize; public function __construct($poolsize = 20) { if (! file_exists ( "./utils.php" )) { throw new RuntimeException ( "<mark>utils.php文件丟失,無法進行配置文件的初始化操作!</mark><br />" );
}else {
require './utils.php';
} // 初始化 配置文件信息
$this->dbconfig = XMLUtil::getDBConfiguration (); // 准備好資料庫連接池「偽隊列」
$this->poolsize = $poolsize;
$this->dbpool = array (); for($index = 1; $index <= $this->poolsize; $index ++) {
$conn = mysqli_connect ( $this->dbconfig ['host'], $this->dbconfig ['user'], $this->dbconfig ['password'], $this->dbconfig ['db'] ) or die ( "<mark>連接資料庫失敗!</mark><br />" );
array_push ( $this->dbpool, $conn );
}
} /**
* 從資料庫連接池中獲取一個資料庫鏈接資源
*
* @throws ErrorException
* @return mixed
*/
public function getConn() { if (count ( $this->dbpool ) <= 0) { throw new ErrorException ( "<mark>資料庫連接池中已無鏈接資源,請稍後重試!</mark>" );
} else { return array_pop ( $this->dbpool );
}
} /**
* 將用完的資料庫鏈接資源放回到資料庫連接池
*
* @param unknown $conn
* @throws ErrorException
*/
public function release($conn) { if (count ( $this->dbpool ) >= $this->poolsize) { throw new ErrorException ( "<mark>資料庫連接池已滿</mark><br />" );
} else {
array_push ( $this->dbpool, $conn );
}
}
}
㈢ 遠程連接一個phpMyadmin管理的資料庫http://218.91.46.198:84/phpMyAdmin/index.php url應該怎樣寫
asp這樣寫:redirect "http://218.91.46.198:84/phpMyAdmin/index.php"
php這樣寫:
echo "<script language='javascript'>";
echo 'window.location="http://218.91.46.198:84/phpMyAdmin/index.php"';
echo "</script>";
如果用瀏覽器訪問,輸入網址http://218.91.46.198:84/phpMyAdmin/
就可以。然後用收藏夾收藏方便以後訪問
㈣ 使用PHP將選擇表單中的結果存入一個文本文檔,有沒有大佬幫忙看看我的代碼為啥運行後沒有任何效果
前幾天,小異看到國外一位網友使用HTML5游戲引擎Phaser 3 製作了他的個人網站。
好傢伙,逼格拉滿了,這哪裡是一個平平無奇的個人網站啊,完全就是一個神奇寶貝風格的游戲網站!
這個極具特色的個人網站的其他部分的製作是簡單地使用了CSS和JS。你可以通過滑鼠操控小人物參觀代表作者不同經歷和信息介紹的建築物,游戲體驗感十足!
在原帖子下方,還「炸」出了許多深藏不露的Web開發高手。
有把自己的個人網站設計成超級馬里奧游戲的軟體工程師。
有把自己的個人網站設計成沉浸式網路拉麵店的技術顧問。
有把自己的個人授課網站設計成3D汽車游戲的Web開發人員。
看了這些有趣的個人網站,小異特別羨慕,也想學好Web開發。
因此,小異特地去請教了一位擁有多年Web開發經驗的程序員朋友,他給我總結了Web開發快速上手搞懂的幾個要點,用他的原話就是「抓住幾個重點問題,你就學會了Web編程」!
今天,小異也不藏私,一起分享給大家。
— 01 —
明白Web開發到底是什麼?
首先,概念性的東西要清楚。
比如,我們常說的Web開發通常是指前端開發與後端開發的組合。
前端開發是指開發用戶直接看到的網站部分,如布局、設計和互動性。
一個網站的每一個面向客戶的東西都屬於前端開發,主要通過HTML、CSS、JavaScript、AJAX、DOM等技術實現網站在客戶端的顯示和交互功能。
後端開發處理的是後端邏輯,與處理開發網站客戶端的前端開發不同。
後端開發主要通過Java、PHP、Python和Node.js等技術對從前端頁面傳輸來的數據進行處理,按照需要將數據存入資料庫,或者通過模板引擎來處理數據,接著以變數的方式將其展示到頁面模板上,最終輸出頁面到瀏覽器並進行渲染。
你也可以這樣簡單地理解,前端開發用於構建用戶界面,而後端開發用於構建系統架構以使網頁正常工作。
— 02 —
明白Web伺服器的工作原理
一般來說,Web伺服器也稱為WWW(WORLD WIDE WEB)伺服器,是指網站伺服器,主要功能是提供網上信息瀏覽服務。
當互聯網上運行在其他計算機中的瀏覽器發出請求時,伺服器才會響應。目前最主流的伺服器是 Apache、Nginx和IIS。
Web伺服器的工作原理可以概括為:
(1)客戶端通過TCP/IP協議和Web伺服器建立TCP連接。
(2)連接建立以後,向Web伺服器發送HTTP協議請求包。
(3) Web伺服器對請求按照HTTP協議進行解碼。
(4)如果沒有錯誤出現, Web伺服器將執行請求所要求的動作,向客戶端發送HTTP協議應答包。
(5)客戶端與Web伺服器斷開,關閉文件和網路連接,結束會話。
— 03 —
HTML5的語法、標記方法、元素
編寫Web應用逃不開HTML,不管是在線的還是離線的,所以Web開發者應該學習HTML5相關知識。
HTML5是新一代的HTML標准,新增了很多特性。HTML5的結構、語法、標記方法、元素,像、、meta元素.....這些常用的標簽,常見的特殊字元,還有常用表單的寫法,你要是都能信手拈來,那寫網頁肯定沒問題。
— 04 —
CSS語法
都說門面功夫要做到位,你開發的Web項目也得有賞心悅目的外觀。而Web開發中的面子工程靠的就是CSS。
你需要熟悉CSS中經典屬性的用法,還有CSS3中的選擇器、背景、邊框、盒子模型、布局方式、動畫、濾鏡,以及針對各種瀏覽器應該怎樣在代碼中設置各種屬性等。
— 05 —
熟悉各種Web開發編程語言,同時精通一門
如果你是Web開發初學者,在這種情況下,你很有可能在選擇最佳Web編程語言時面臨很多困難。因為不同的編程語言支持不同的編程技術,並各有各的復雜性。
一個優秀的前端開發人員應該對HTML,CSS,JavaScript有很強的理解,一個優秀的後端開發人員應該熟悉伺服器端語言,即PHP、Python、Java。
為此,小異列出了一些最適合 Web 開發的編程語言,你不需要學習所有的編程語言,但請你根據實際需要選擇最合適的一種。
● JavaScript
JavaScript是唯一能讓你既可以建立Web應用程序、前端和後端,又可以構建移動應用程序(React Native)的的編程語言。
毫無疑問,比較容易上手的JavaScript不僅是需求很高也是最受Web開發者喜愛的語言之一。如果你很糾結到底選擇那門編程語言,那就直接選擇JavaScript吧!
● Python
Python是另一種用於Web開發的編程語言。它被大約44%的軟體工程師使用,僅次於JavaScript,位居第二。Python的優點主要有:語法簡單、易於學習,支持不同庫或工具,良好的可讀性,擁有優秀的框架,具有強大的類型等。
● PHP
PHP是一種腳本語言,主要用於Web應用、伺服器端、WordPress、Facebook或Flickr等。PHP Web開發支持.NET、Bzip2、Apache等免費開源擴展。它提供微軟SQL、MySQL、Server等不同資料庫的訪問。
此外,PHP從第一版開始就一直使用類似Perl的變數,可以有效地結合到HTML中。
● Java
Java 廣泛用於製作企業級的 Web 應用程序,很多大公司都在使用它。
選擇Java作為Web編程語言的主要是因為它有豐富的開源庫,支持面向對象的編程範式,藉助 Java 虛擬機功能實現最佳平台獨立性,高度安全,支持多線程,是分布式計算的理想選擇。
● Ruby
與Python和PHP一樣,Ruby也特別簡單易學,非常適合初學者。
並且,由於Ruby on Rails 框架可以用於開發網站,所以Ruby 也是 Web 開發的絕佳選擇。
— 06 —
知道都有哪些Web開發框架,會用其中一個
前端開發人員應該知道各種Web開發框架和庫,如Bootstrap,React,AngularJS,EmberJS等。後端開發人員應該知道Express.js,Django,Laravel,Ruby等框架。
— 07 —
路徑問題
在Web開發中經常會遇到路徑問題,而如果你對Web中的路徑相關概念一知半解的話,總會遇到令人頭疼的問題。為了避免錯誤,提高開發效率,你需要對它有足夠的認識。
路徑通常分為絕對路徑和相對路徑。
絕對路徑指文件的完整URL,例如:
而相對路徑指以當前網頁所在位置為基準建立出的目錄路徑,例如:
— 08 —
資料庫訪問
目前比較容易並且普遍的資料庫訪問技術主要有四種,分別是JDBC、ODBC、ADO.NET和PDO,復雜點的技術可以等Web開發水平上去了再學習。
想要輕松上手Web開發,掌握JDBC就差不多可以了。JDBC是一種用於java程序鏈接資料庫的標准方法。它是由java編寫的類和介面實現的,是一種可以執行SQL的java API。
如果開發的是簡單的Web應用,JDBC夠你用了,學習使用時,特別注重對Connection介面、Statement介面和ResultSet介面的學習,就能編寫一些簡單的代碼了。
要是這些基礎的東西,你都能搞定了,那應該能找到一份養活自己的Web開發工作了。
當然,如果你的目標不止是學會,還要特別會,達到精通,那小異建議你找個更加詳細的教程,按照大牛給出的路線學習。
這里,小異推薦一本新手自學Web開發的秘笈《零基礎入門學習Web開發(HTML5 & CSS3)》給你。
▲跟著小甲魚,Web開發不迷路!
如果說搞懂上面幾點,你就學會了Web編程開發,那麼,讀懂這本書的內容,你就能成為Web開發的實戰高手。
因為,這本源自B站同名視頻教程,擁有百萬播放量的《零基礎入門學習Web開發(HTML5 & CSS3)》主打特色就是實戰性。
書中精解HTML 5和CSS3中233個語法知識點和多種網頁的設計技巧;
還手把手帶你實現上百個Web開發案例,數十種布局方式,源碼拿來即可用。它附贈源代碼,可運行在macOS、Linux、 Windows等操作系統平台;
文章編輯:羅夢婷 審校:桐希
參考文獻:
《零基礎入門學習Web開發(HTML5 & CSS3)》第一章、第二章
How Long Does It Take To Become A Web Developer?
What Are The Best Programming Language For Web Development
將我的個人網站製作成了一個神奇寶貝風格的小游戲
1
END
㈤ js怎樣連接和調用mysql資料庫
我知道 ie 怎麼連接,別的瀏覽器不行。首先先去mysql官網下載個 odbc 然後安裝,安裝完再去控制面板找到「管理工具」--》「(ODBC)數據源」--》(如果是在自己電腦上測試就選
「用戶DSN」,如果想被別人訪問就選「系統DSN」) 然後添加mysqlodbc,然後把驅動的名字記下來(不是你起的名字,是後面自帶的名字!),准備工作做完,我們就可以通過代碼訪問資料庫了。(註:我第一次安裝ODBC,用js調用時提示我未知數據源一類的話,卸載ODBC後再次安裝ODBC就正常了) 用 ie 先調用odbc驅動 然後操作mysql,話不多說,上代碼!
//創建資料庫連接對象
var conn = new ActiveXObject("ADODB.Connection");
//創建數據集對象
var rs = new ActiveXObject("ADODB.Recordset");
try{
//MySQL ODBC 5.3 ANSI Driver 這個就是我剛才說讓你記得驅動的名字
var connectionstring = "Driver={MySQL ODBC 5.3 ANSI Driver};Server=127.0.0.1;User=root;Password=root;Database=mysql;Option=3;Port=3306";
console.log(connectionstring);
//打開連接
conn.open(connectionstring);
//查詢語句
var sql = " select * from table1 ";
//打開數據集(即執行查詢語句)
rs.open(sql,conn);
//(或者rs=conn.execute(sql);)
//遍歷所有記錄
while(!rs.eof){
//WScript是Windows 的腳本宿主對象,詳細情況請在windows幫助里查找。
//WScript.Echo輸出記錄的內容
document.write(rs.Fields("id") + "\t" + rs.Fields("name") + "\n");
//下一條記錄
rs.moveNext();
}
//關閉記錄集
rs.close();
//關閉資料庫連接
conn.close();
} catch(e){
//異常報告
document.write(e.message);
} finally{
//
}
㈥ jdbc 連接 mysql 資料庫 能不能指定mysql.sock文件的位置
當然可以!
㈦ eclipsephp如何連接mysql資料庫
1、MySQL安裝,不會的朋友可以看網上教程。
下面來創建一個數據:
mysql>CREATE DATABASE test; //創建一個資料庫
mysql>use test; //指定test為當前要操作的資料庫
mysql>CREATE TABLE user (name VARCHAR(20),password VARCHAR(20)); //創建一個表user,設置兩個欄位。
mysql>INSERT INTO user VALUES('huheng','123456'); //插入一條數據到表中
2、打開Eclipse,創建一個項目(my)
操作:右鍵點擊my--->build Path--->add external Archiver...選擇jdbc驅動,點擊確定。
3、驅動已經導入,下面我們來寫一個程序驗證一下
importjava.sql.*;
publicclassMysqlJdbc{
publicstaticvoidmain(Stringargs[]){
try{
Class.forName("com.mysql.jdbc.Driver");//載入MYSQLJDBC驅動程序
//Class.forName("org.gjt.mm.mysql.Driver");
System.out.println("SuccessloadingMysqlDriver!");
}
catch(Exceptione){
System.out.print("ErrorloadingMysqlDriver!");
e.printStackTrace();
}
try{
Connectionconnect=DriverManager.getConnection(
"jdbc:mysql://localhost:3306/test","root","198876");
//連接URL為jdbc:mysql//伺服器地址/資料庫名,後面的2個參數分別是登陸用戶名和密碼
System.out.println("SuccessconnectMysqlserver!");
Statementstmt=connect.createStatement();
ResultSetrs=stmt.executeQuery("select*fromuser");
//user為你表的名稱
while(rs.next()){
System.out.println(rs.getString("name"));
}
}
catch(Exceptione){
System.out.print("getdataerror!");
e.printStackTrace();
}
}
}
4、點擊運行程序:
SuccessloadingMysqlDriver!
SuccessconnectMysqlserver!
huheng
出現上面結果,說明你連接資料庫成功。