當前位置:首頁 » 數據倉庫 » apachepost資料庫
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

apachepost資料庫

發布時間: 2023-05-07 13:23:06

1. okhttp get和post的區別

okhttp get和post的區別是:

Get:是以實雹雀輪體的方式得到由請求URI所指定資源的信息,如果請求URI只是一個數據產生過程,那麼最終要在響應實體中返回的是處理過程的結果所指向的資源,而不是處理過程的描述。
Post:用來向目的伺服器發出請求,要求它接受被附在請求後的實體,源信並把它當作請歲虛求隊列中請求URI所指定資源的附加新子項,Post被設計成用統一的方法實現下列功能:
1:對現有資源的解釋
2:向電子公告欄、新聞組、郵件列表或類似討論組發信息。
3:提交數據塊
4:通過附加操作來擴展資料庫

Android系統提供了兩種HTTP通信類,HttpURLConnection和HttpClient。
盡管Google在大部分安卓版本中推薦使用HttpURLConnection,但是這個類相比HttpClient實在是太難用,太弱爆了。
OkHttp是一個相對成熟的解決方案,據說Android4.4的源碼中可以看到HttpURLConnection已經替換成OkHttp實現了。所以我們更有理由相信OkHttp的強大。

OkHttp 處理了很多網路疑難雜症:會從很多常用的連接問題中自動恢復。如果您的伺服器配置了多個IP地址,當第一個IP連接失敗的時候,OkHttp會自動嘗試下一個IP。OkHttp還處理了代理伺服器問題和SSL握手失敗問題。
使用 OkHttp 無需重寫您程序中的網路代碼。OkHttp實現了幾乎和java.net.HttpURLConnection一樣的API。如果你用了 Apache HttpClient,則OkHttp也提供了一個對應的okhttp-apache 模塊。

2. 我用Apache+PHP+Mysql做了一個具備登錄注冊的網站,但我登錄時輸入了正確密碼系統卻提示密碼錯誤,求解決

if (password!=$dbpassword){//當對應密碼不對時跳回index.html界握旦神面
你這個段虧password應該是$password吧。
還有可能是你存到db里的遲清password是加密過的,這樣就不會相等了。建議將$password和$dbpassword都打出來看看

3. 2019數據架構選型必讀:1月資料庫產品技術解析

本期目錄

DB-Engines資料庫排行榜

新聞快訊

一、RDBMS家族

二、NoSQL家族

三、NewSQL家族

四、時間序列

五、大數據生態圈

六、國產資料庫概覽

七、雲資料庫

八、推出dbaplus Newsletter的想法

九、感謝名單

為方便閱讀、重點呈現,本期Newsletter(2019年1月)將對各個板塊的內容進行精簡。需要閱讀全文的同學可點擊文末 【閱讀原文】 或登錄https://pan..com/s/13BgipbaHeMfvm0YPtiYviA

進行下載。

DB-Engines資料庫排行榜

以下取自2019年1月的數據,具體信息可以參考http://db-engines.com/en/ranking/,數據僅供參考。

DB-Engines排名的數據依據5個不同的因素:

新聞快訊

1、2018年9月24日,微軟公布了SQL Server2019預覽版,SQL Server 2019將結合Spark創建統一數據平台。

2、2018年10月5日,ElasticSearch在美國紐約證券交易所上市。

3、亞馬遜放棄甲骨文資料庫軟體,導致最大倉庫之一在黃金時段宕機。受此消息影響,亞馬遜盤前股價小幅跳水,跌超2%。

4、2018年10月31日,Percona發布了Percona Server 8.0 RC版本,發布對MongoDB 4.0的支持,發布對XtraBackup測試第二個版本。

5、2018年10月31日,Gartner陸續發布了2018年的資料庫系列報告,包括《資料庫魔力象限》、《資料庫核心能力》以及《資料庫推薦報告》。

今年的總上榜資料庫產品達到了5家,分別來自:阿里雲,華為,巨杉資料庫,騰訊雲,星環 科技 。其中阿里雲和巨杉資料庫已經連續兩年入選。

6、2018年11月初,Neo4j宣布完成E輪8000萬美元融資。11月15日,Neo4j宣布企業版徹底閉源:

7、2019年1月8日,阿里巴巴以1.033億美元(9000萬歐元)的價格收購了Apache Flink商業公司DataArtisans。

8、2019年1月11日早間消息,亞馬遜宣布推出雲資料庫軟體,亞馬遜和MongoDB將會直接競爭。

RDBMS家族

Oracle 發布18.3版本

2018年7月,Oracle Database 18.3通用版開始提供下載。我們可以將Oracle Database 18c視為採用之前發布模式的Oracle Database 12c第2版的第一個補丁集。未來,客戶將不再需要等待多年才能用上最新版Oracle資料庫,而是每年都可以期待新資料庫特性和增強。Database 19c將於2019年Q1率先在Oracle cloud上發布雲版本。

Oracle Database 18c及19c部分關鍵功能:

1、性能

2、多租戶,大量功能增強及改進,大幅節省成本和提高敏捷性

3、高可用

4、數據倉庫和大數據

MySQL發布8.0.13版本

1、賬戶管理

經過配置,修改密碼時,必須帶上原密碼。在之前的版本,用戶登錄之後,就可以修改自己的密碼。這種方式存在一定安全風險。比如用戶登錄上資料庫後,中途離開一段時間,那麼非法用戶可能會修改密碼。由參數password_require_current控制。

2、配置

Innodb表必須有主鍵。在用戶沒有指定主鍵時,系統會生成一個默認的主鍵。但是在主從復制的場景下,默認的主鍵,會對叢庫應用速度帶來致命的影響。如果設置sql_require_primary_key,那麼資料庫會強制用戶在創建表、修改表時,加上主鍵。

3、欄位默認值

BLOB、TEXT、GEOMETRY和JSON欄位可以指定默認值了。

4、優化器

1)Skip Scan

非前綴索引也可以用了。

之前的版本,任何沒有帶上f1欄位的查詢,都沒法使用索引。在新的版本中,它可以忽略前面的欄位,讓這個查詢使用到索引。其實現原理就是把(f1 = 1 AND f2 > 40) 和(f1 = 2 AND f2 > 40)的查詢結果合並。

2)函數索引

之前版本只能基於某個列或者多個列加索引,但是不允許在上面做計算,如今這個限制消除了。

5、SQL語法

GROUP BY ASC和GROUP BY DESC語法已經被廢棄,要想達到類似的效果,請使用GROUP BY ORDER BY ASC和GROUP BY ORDER BY DESC。

6、功能變化

1)設置用戶變數,請使用SET語句

如下類型語句將要被廢棄SELECT @var, @var:=@var+1。

2)新增innodb_fsync_threshold

該變數是控制文件刷新到磁碟的速率,防止磁碟在短時間內飽和。

3)新增會話級臨時表空間

在以往的版本中,當執行SQL時,產生的臨時表都在全局表空間ibtmp1中,及時執行結束,臨時表被釋放,空間不會被回收。新版本中,會為session從臨時表空間池中分配一個臨時表空間,當連接斷開時,臨時表空間的磁碟空間被回收。

4)在線切換Group Replication的狀態

5)新增了group_replication_member_expel_timeout

之前,如果某個節點被懷疑有問題,在5秒檢測期結束之後,那麼就直接被驅逐出這個集群。即使該節點恢復正常時,也不會再被加入集群。那麼,瞬時的故障,會把某些節點驅逐出集群。

group_replication_member_expel_timeout讓管理員能更好的依據自身的場景,做出最合適的配置(建議配置時間小於一個小時)。

MariaDB 10.3版本功能展示

1、MariaDB 10.3支持update多表ORDER BY and LIMIT

1)update連表更新,limit語句

update t1 join t2 on t1.id=t2.id set t1.name='hechunyang' limit 3;

MySQL 8.0直接報錯

MariaDB 10.3更新成功

2)update連表更新,ORDER BY and LIMIT語句

update t1 join t2 on t1.id=t2.id set t1.name='HEchunyang' order by t1.id DESC limit 3;

MySQL 8.0直接報錯

MariaDB 10.3更新成功

參考:

https://jira.mariadb.org/browse/MDEV-13911

2、MariaDB10.3增補AliSQL補丁——安全執行Online DDL

Online DDL從名字上看很容易誤導新手,以為不論什麼情況,修改表結構都不會鎖表,理想很豐滿,現實很骨感,注意這個坑!

有以下兩種情況執行DDL操作會鎖表的,Waiting for table metadata lock(元數據表鎖):

針對第二種情況,MariaDB10.3增補AliSQL補丁-DDL FAST FAIL,讓其DDL操作快速失敗。

例:

如果線上有某個慢SQL對該表進行操作,可以使用WAIT n(以秒為單位設置等待)或NOWAIT在語句中顯式設置鎖等待超時,在這種情況下,如果無法獲取鎖,語句將立即失敗。 WAIT 0相當於NOWAIT。

參考:

https://jira.mariadb.org/browse/MDEV-11388

3、MariaDB Window Functions窗口函數分組取TOP N記錄

窗口函數在MariaDB10.2版本里實現,其簡化了復雜SQL的撰寫,提高了可讀性。

參考:

https://mariadb.com/kb/en/library/window-functions-overview/

Percona Server發布8.0 GA版本

2018年12月21日,Percona發布了Percona Server 8.0 GA版本。

在支持MySQL8.0社區的基礎版上,Percona Server for MySQL 8.0版本中帶來了許多新功能:

1、安全性和合規性

2、性能和可擴展性

3、可觀察性和可用性

Percona Server for MySQL 8.0中將要被廢用功能:

Percona Server for MySQL 8.0中刪除的功能:

RocksDB發布V5.17.2版本

2018年10月24日,RocksDB發布V5.17.2版本。

RocksDB是Facebook在LevelDB基礎上用C++寫的高效內嵌式K/V存儲引擎。相比LevelDB,RocksDB提供了Column-Family,TTL,Transaction,Merge等方面的支持。目前MyRocks,TiKV等底層的存儲都是基於RocksDB來構建。

PostgreSQL發布11版本

2018年10月18日,PostgreSQL 11發布。

1、PostgreSQL 11的重大增強

2、PostgreSQL 插件動態

1)分布式插件citus發布 8.1

citus是PostgreSQL的一款sharding插件,目前國內蘇寧、鐵總、探探有較大量使用案例。

https://github.com/citusdata/citus

2)地理信息插件postgis發布2.5.1

PostGIS是專業的時空資料庫插件,在測繪、航天、氣象、地震、國土資源、地圖等時空專業領域應用廣泛。同時在互聯網行業也得到了對GIS有性能、功能深度要求的客戶青睞,比如共享出行、外賣等客戶。

http://postgis.net/

3)時序插件timescale發布1.1.1

timescale是PostgreSQL的一款時序資料庫插件,在IoT行業中有非常好的應用。github star數目前有5000多,是一個非常火爆的插件。

https://github.com/timescale/timescaledb

4)流計算插件 pipelinedb 正式插件化

Pipelinedb是PostgreSQL的一款流計算插件,使用這個創建可以對高速寫入的數據進行實時根據定義的聚合規則進行聚合(支持概率計算),實時根據定義的規則觸發事件(支持事件處理函數的自定義)。可用於IoT,監控,FEED實時計算等場景。

https://github.com/pipelinedb/pipelinedb

3、PostgreSQL衍生開源產品動態

1)agensgraph發布 2.0.0版本

agensgraph是兼容PostgreSQL、opencypher的專業圖資料庫,適合圖式關系的管理。

https://github.com/bitnine-oss/agensgraph

2)gpdb發布5.15

gpdb是兼容PostgreSQL的mpp資料庫,適合OLAP場景。近兩年,gpdb一直在追趕PostgreSQL的社區版本,預計很快會追上10的PostgreSQL,在TP方面的性能也會得到顯著提升。

https://github.com/greenplum-db/gpdb

3)antdb發布3.2

antdb是以Postgres-XC為基礎開發的一款PostgreSQL sharding資料庫,亞信主導開發,開源,目前主要服務於亞信自有客戶。

https://github.com/ADBSQL/AntDB

4)遷移工具MTK發布52版本

MTK是EDB提供的可以將Oracle、PostgreSQL、MySQL、MSSQL、Sybase資料庫遷移到PostgreSQL, PPAS的產品,遷移速度可以達到100萬行/s以上。

https://github.com/digoal/blog/blob/master/201812/20181226_01.md

DB2發布 11.1.4.4版本

DB2最新發布Mod Pack 4 and Fix Pack 4,包含以下幾方面的改動及增強:

1、性能

2、高可用

3、管理視圖

4、應用開發方面

5、聯邦功能

6、pureScale

NoSQL家族

Redis發布5.0.3版本

MongoDB升級更新MongoDB Mobile和MongoDB Stitch

2018年11月21日,MongoDB升級更新MongoDB Mobile和MongoDB Stitch,助力開發人員提升工作效率。

MongoDB 公司日前發布了多項新產品功能,旨在更好地幫助開發人員在世界各地管理數據。通過利用存儲在移動設備和後台資料庫的數據之間的實時、自動的同步特性,MongoDB Mobile通用版本助力開發人員構建更快捷、反應更迅速的應用程序。此前,這只能通過在移動應用內部安裝一個可供選擇或限定功能的資料庫來實現。

MongoDB Mobile在為客戶提供隨處運行的自由度方面更進了一步。用戶在iOS和安卓終端設備上可擁有MongoDB所有功能,將網路邊界擴展到其物聯網資產范疇。應用系統還可以使用MongoDB Stitch的軟體開發包訪問移動客戶端或後台數據,幫助開發人員通過他們希望的任意方式查詢移動終端數據和物聯網數據,包括本地讀寫、本地JSON存儲、索引和聚合。通過Stitch移動同步功能(現可提供beta版),用戶可以自動對保存在本地的數據以及後台資料庫的數據進行同步。

本期新秀:Cassandra發布3.11.3版本

2018年8月11日,Cassandra發布正式版3.11.3。

Apache Cassandra是一款開源分布式NoSQL資料庫系統,使用了基於Google BigTable的數據模型,與面向行(row)的傳統關系型資料庫或鍵值存儲key-value資料庫不同,Cassandra使用的是寬列存儲模型(Wide Column Stores)。與BigTable和其模仿者HBase不同,數據並不存儲在分布式文件系統如GFS或HDFS中,而是直接存於本地。

Cassandra的系統架構與Amazon DynamoDB類似,是基於一致性哈希的完全P2P架構,每行數據通過哈希來決定應該存在哪個或哪些節點中。集群沒有master的概念,所有節點都是同樣的角色,徹底避免了整個系統的單點問題導致的不穩定性,集群間的狀態同步通過Gossip協議來進行P2P的通信。

3.11.3版本的一些bug fix和改進:

NewSQL家族

TiDB 發布2.1.2版本

2018 年 12 月 22 日,TiDB 發布 2.1.2 版,TiDB-Ansible 相應發布 2.1.2 版本。該版本在 2.1.1 版的基礎上,對系統兼容性、穩定性做出了改進。

TiDB 是一款定位於在線事務處理/在線分析處理( HTAP: Hybrid Transactional/Analytical Processing)的融合型資料庫產品。除了底層的 RocksDB 存儲引擎之外,分布式SQL層、分布式KV存儲引擎(TiKV)完全自主設計和研發。

TiDB 完全開源,兼容MySQL協議和語法,可以簡單理解為一個可以無限水平擴展的MySQL,並且提供分布式事務、跨節點 JOIN、吞吐和存儲容量水平擴展、故障自恢復、高可用等優異的特性;對業務沒有任何侵入性,簡化開發,利於維護和平滑遷移。

TiDB:

PD:

TiKV:

Tools:

1)TiDB-Lightning

2)TiDB-Binlog

EsgynDB發布R2.5版本

2018年12月22日,EsgynDB R2.5版本正式發布。

作為企業級產品,EsgynDB 2.5向前邁進了一大步,它擁有以下功能和改進:

CockroachDB發布2.1版本

2018年10月30日,CockroachDB正式發布2.1版本,其新增特性如下:

新增企業級特性:

新增SQL特性:

新增內核特性:

Admin UI增強:

時間序列

本期新秀:TimescaleDB發布1.0版本

10月底,TimescaleDB 1.0宣布正式推出,官方表示該版本已可用於生產環境,支持完整SQL和擴展。

TimescaleDB是基於PostgreSQL資料庫開發的一款時序資料庫,以插件化的形式打包提供,隨著PostgreSQL的版本升級而升級,不會因為另立分支帶來麻煩。

TimescaleDB架構:

數據自動按時間和空間分片(chunk)

更新亮點:

https://github.com/timescale/timescaledb/releases/tag/1.0.0

大數據生態圈

Hadoop發布2.9.2版本

2018年11月中旬,Hadoop在2.9分支上發布了新的2.9.2版本,該版本進行了204個大大小小的變更,主要變更如下:

Greenplum 發布5.15版本

Greenplum最新的5.15版本中發布了流式數據載入工具。

該版本中的Greenplum Streem Server組件已經集成了Kafka流式載入功能,並通過了Confluent官方的集成認證,其支持的主要功能如下:

國產資料庫概覽

K-DB發布資料庫一體機版

2018年11月7日,K-DB發布了資料庫一體機版。該版本更新情況如下:

OceanBase遷移服務發布1.0版本

1月4日,OceanBase 正式發布OMS遷移服務1.0版本。

以下內容包含 OceanBase 遷移服務的重要特性和功能:

SequoiaDB發布3.0.1新版本

1、架構

1)完整計算存儲分離架構,兼容MySQL協議、語法

計算存儲分離體系以松耦合的方式將計算與存儲層分別部署,通過標准介面或插件對各個模塊和組件進行無縫替換,在計算層與存儲層均可實現自由的彈性伸縮。

SequoiaDB巨杉資料庫「計算-存儲分離」架構詳細示意

用戶可以根據自身業務特徵選擇面向交易的SQL解析器(例如MySQL或PGSQL)或面向統計分析的執行引擎(例如SparkSQL)。眾所周知,使用不同的SQL優化與執行方式,資料庫的訪問性能可能會存在上千上萬倍的差距。計算存儲分離的核心思想便是在數據存儲層面進行一體化存儲,在計算層面則利用每種執行引擎的特點針對不同業務場景進行選擇和優化,用戶可以在存儲層進行邏輯與物理的隔離,將面向高頻交易的前端業務與面向高吞吐量的統計分析使用不同的硬體進行存儲,確保在多類型數據訪問時互不幹擾,以真正達到生產環境可用的多租戶與HTAP能力。

2、其他更新信息

1)介面變更:

2)主要特性:

雲資料庫

本期新秀:騰訊發布資料庫CynosDB,開啟公測

1、News

1)騰訊雲資料庫MySQL2018年重大更新:

2)騰訊雲資料庫MongoDB2018年重大更新:

3)騰訊雲資料庫Redis/CKV+2018年重大更新:

4)騰訊雲資料庫CTSDB2018年重大更新:

2、Redis 4.0集群版商業化上線

2018年10月,騰訊雲資料庫Redis 4.0集群版完成邀測、公測、商業化三個迭代,在廣州、上海、北京正式全量商業化上線。

產品特性:

使用場景:

官網文檔:

https://cloud.tencent.com/document/proct/239/18336

3、騰訊自研資料庫CynosDB發布,開啟公測

2018年11月22日,騰訊雲召開新一代自研資料庫CynosDB發布會,業界第一款全面兼容市面上兩大最主流的開源資料庫MySQL和PostgreSQL的高性能企業級分布式雲資料庫。

本期新秀:京東雲DRDS發布1.0版本

12月24日,京東雲分布式關系型資料庫DRDS正式發布1.0版本。

DRDS是京東雲精心自研的資料庫中間件產品,獲得了2018年 」可信雲技術創新獎」。DRDS可實現海量數據下的自動分庫分表,具有高性能,分布式,彈性升級,兼容MySQL等優點,適用於高並發、大規模數據的在線交易, 歷史 數據查詢,自動數據分片等業務場景,歷經多次618,雙十一的考驗,已經在京東集團內大規模使用。

京東雲DRDS產品有以下主要特性

1)自動分庫分表

通過簡單的定義即可自動實現分庫分表,將數據實際存放在多個MySQL實例的資料庫中,但呈現給應用程序的依舊是一張表,對業務透明,應用程序幾乎無需改動,實現了對資料庫存儲和處理能力的水平擴展。

2)分布式架構

基於分布式架構的集群方案,多個對等節點同時對外提供服務,不但可有效規避服務的單點故障,而且更加容易擴展。

3)超強性能

具有極高的處理能力,雙節點即可支持數萬QPS,滿足用戶超大規模處理能力的需求。

4)兼容MySQL

兼容絕大部分MySQL語法,包括MySQL語法、數據類型、索引、常用函數、排序、關聯等DDL,DML語句,使用成本低。

參考鏈接:

https://www.jdcloud.com/cn/procts/drds

RadonDB發布1.0.3版本

2018年12月26日,MyNewSQL領域的RadonDB雲資料庫發布1.0.3版本。

推出dbaplus Newsletter的想法

dbaplus Newsletter旨在向廣大技術愛好者提供資料庫行業的最新技術發展趨勢,為社區的技術發展提供一個統一的發聲平台。為此,我們策劃了RDBMS、NoSQL、NewSQL、時間序列、大數據生態圈、國產資料庫、雲資料庫等幾個版塊。

我們不以商業宣傳為目的,不接受任何商業廣告宣傳,嚴格審查信息源的可信度和准確性,力爭為大家提供一個純凈的技術學習環境,歡迎大家監督指正。

至於Newsletter發布的周期,目前計劃是每三個月左右會做一次跟進, 下期計劃時間是2019年4月14日~4月25日, 如果有相關的信息提供請發送至郵箱:[email protected]

感謝名單

最後要感謝那些提供寶貴信息和建議的專家朋友,排名不分先後。

往期回顧:

↓↓別忘了點這里下載 2019年1月 完整版Newsletter 哦~

4. 為什麼POST的數據不能插入資料庫,php新手求大神指導一下

你好,這里的查詢和插入不用涉及到任何插件

代碼我改了下

首先確保你的信含資料庫和表都存在

把$sqlrs直接出去,拿到phpmyadmin里的sql里去執行,如果能執行,那就說明肯定是沒問題了的


希望能解決你的問題,望採納

<?php
$uuid=$_POST['uuid'];
$time=time();
$conn=@mysql_connect("localhost","root","陪坦消");
if(!$conn){
die("連接資料庫失敗:".mysql_error());
}
mysql_select_db("pex",$conn);
mysql_query("setcharacterset'utf8'");
$result=mysql_query("SELECT*FROM`my_vf`WHERE`uuid`='$uuid'");
if(mysql_num_rows($result)){
echo"alreadyin";
}else{
$sqlrs="INSERTINTO`pex`.`my_vf`(`uuid`,`time`)VALUES('$uuid','$time')";
echo$sqlrs;
mysql_query("setnames'gbk'");
if(!mysql_query($sqlrs)){
蘆知die("連接資料庫失敗:".mysql_error());
}else{
echo"uuidissendok";
}
}
mysql_close($con);
?>

5. 1.Post和Get傳值,區別和接收方式

POST與GET是HTTP多種請求方法中的兩個先看看RFC2616關於兩者的解釋GETGET方法就是以實體(作為請求或應答的有效負荷而傳輸的信息.一個實體包含報頭形式的維護信息和消息體形式的內容)方式得到由請求URI所指定資源的信息。如果請求URI只是一個數據產生過程,那麼最終要在回應實體中返回扮坦基的是由該處理過程的結果所指向的資源,而不是返回該處理過程的描述文字,除非那段文字恰好是處理的輸出。如果請求消息包含If-Modified-Since標題域,GET方法的語法就變成「條件GET」,即「(conditional GET)」。條件GET方法可以對指定資源進行判斷,如果它在If-Modified-Since標題域(見10.9節)中的指定日期後發生了更新,才啟動傳輸,否則不傳輸。這種條件GET允許被緩存的實體在不必經過多次請求或不必要的數據傳輸就能進行刷新,從而有助於降低網路負載。POSTPOST方法用來向目的伺服器發出請求,要求它接受被附在請求後的實體,並把它當作請求隊列(Request-Line)中請求URI所指定資源的附加新子項。POST被設計成用統一的方法實現下列功能:o 對現有資源的注釋(Annotation of existing resources);o 向電子公告欄、新聞組,郵件列表或類似討論組發送消息;o 提交數據塊,如將表格(form [3])的結果提交給數據處理過程;o 通過附加操作來擴展資料庫。POST方法的實際功能由伺服器來決定,而且通常依賴於請求URI。在POST過程中,實體是URI的從屬部分,就好象文件從屬於包含它的目錄、新聞組文件從屬於發出該文件的新聞組、記錄從屬於其所在的資料庫一樣。成功的POST不需要在原始伺服器創建實體,並將其做為資源;也不需要為未來的訪問提供條件。也就是說,POST方法不一定會指向URI指定的資源。在這種情況下,200(成信賣功)或204(無內容)都是適當的回應狀態,取決於實際回應實體中對結果的描述。如果在原始伺服器上創建了資源,回應應是201(已創建),並包含一個實體(對"text/html"類型最為適合),該實體中記錄著對新資源請求的狀態描述。在所有的HTTP/1.0的POST請求中,必須指定合法的內容長度(Content-Length)。如果HTTP/1.0伺服器在接收到請求消息內容時無法確定其長度,就會返回400(非法請求)代碼。應用廳謹程序不能緩存對POST請求的回應,因為做為應用程序來說,它們沒有辦法知道伺服器在未來的請求中將如何回應。詳解1.GET請求的參數,則必須將這些額外的信息附在URL本身的後面。其格式類似於:URL?name1=value1&name2=value2&nameN=valueNPOST方法請求格式POST / HTTP/1.1Host: www.test.comUser-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.6)Content-Type: application/x-www-form-urlencodedContent-Length: 420Connection: Keep-Alivename=linux&publisher=microsoft//變數前者直接在URL中傳送,後者附加在HTTP請求主體中,單純在URL里是看不到的對於PHP來講使用$_GET可獲取GET方法請求的變數值,使用$_POST可獲取POST方法請求的變數值,$_REQUEST可獲取兩種方法請求的變數值,但出於安全形度考慮不推薦使用.2.數據傳輸大小對使用GET方法提交數據時,在IE環境下,需要注意其數據編碼加到URL後其長度受到2083位元組的限制, Internet Explorer 也有最多 2,048 個字元的最大路徑長度(Microsoft states that the maximum length of a URL in Internet Explorer is 2,083 characters, with no more than 2,048 characters in the pathportion of the URL. )。如果要使用 GET 方法,您被限制為最多個最多 2,048 個字元,減去的實際路徑中的字元數。對於其他瀏覽器,如Netscape、FireFox等,理論上沒有長度限制,其限製取決於操作系統的支持。APACHE伺服器下有人測試過其字元限制達4,000 charactersPOST提交數據大小理論沒有限制,HTTP協議規范也沒有進行大小限制,而處理POST請求是在伺服器端進行所以其限制應該與伺服器端環境有關.(參考: http://support.microsoft.com/kb/q208427/)3.從數據傳輸層面上來講GET和POST安全性無多大差別,GET請求中,由於在傳輸過程,數據被放在請求的URL中,而如今現有的很多伺服器、代理伺服器或者用戶代理都會將請求URL記錄到日誌文件中,然後放在某個地方,這樣就可能會有一些隱私的信息被第三方看到。另外,用戶也可以在瀏覽器上直接看到提交的數據,一些系統內部消息將會一同顯示在用戶面前。Post的所有操作對用戶來說都是不可見的。4.另外表單中的action默認是get,action頁面後邊帶的參數也被忽視;但在在POST方法下頁面帶參數和不帶參數的則不同的。5.Get限制Form表單的數據集的值必須為ASCII字元;而Post支持整個ISO10646字元集。

6. 伺服器中apache(阿帕奇)是個什麼軟體,幹嘛用的

APACHE就是一個網路伺服器,這個伺服器偵聽一個TCP埠,一般是80,對埠收到的命令進行解釋,然後提交一些結果。APACHE解釋的最主要的命令就是GET和POST,一般對應客戶端在瀏覽器輸入地址、瀏覽器裡面點擊鏈接和提交一個表單。APACHE對GET和POST命基雹令進行解釋的時候,如果GET和POST的對象是一個HTML、CSS、JS、RAR、TXT等一般文件,就直接把文件的內容發回客戶端;如果對象是一個PHP文件,APACHE就啟用PHP.EXE程序(UNIX上名稱不一樣遲鋒肢,而且安裝為模塊的細節碼世又有不同,這里只是舉例),把文件、調用的參數傳遞給PHP.EXE,然後把PHP.EXE執行的結果反饋給客戶端。
PHP可以調用各種庫執行各類功能,最典型的就是查詢資料庫。PHP.EXE解釋執行PHP文本文件裡面的語句,執行前一般不翻譯,就象批處理一樣。
APACHE可以配置多個類似PHP這樣的過濾器,凡是XXX類的文件,都提交給XXX.EXE執行,把執行完畢的內容發送給瀏覽器,其它文件直接發送。APACHE就這么簡單的、機械的執行。

7. http中get和post的區別

在瀏覽器中輸入網址訪問資源都是通過GET方式;在FORM提交中,可以通過Method指定提交方式為GET或者POST,慎虧默認為GET提交。

HTTP 定義了與伺服器交互的不同方法,最常用的有4種,Put(增),Delete(刪),Post(改),Get(查),即增刪改查:

1)Get, 它用於獲取信息,注意,他只是獲取、查詢數據,也就是說它不會修改伺服器上的數據,從這點來講,它是數據安全的,而稍後會提到的Post它是可以修改數據的,所以這也是兩者差別之一了。

2) Post,它是可以向伺服器發送修改請求,從而修改伺服器的,比方說,我們要在論壇上回貼、在博客上評論,這就要用到Post了,當然它也是可以僅僅獲取數據的。

3)Delete 刪除數據。可以通過Get/Post來實現。

4)Put,增加、放置數據,可以通過Get/Post來實現。

根據HTTP規范,GET用於信息獲取,而且應該是安全的和冪等的 。

1.所謂安全的意味著該操作用於獲取信息而非修改信息。換句話說,GET請求一般不應產生副作用。就是說,僅僅是獲取資源信息,就像資料庫查詢一樣,不會修改,增加數據,不會影響資源的狀態。(注意:這里安全的含義僅僅是指是非修改信息。)

根據HTTP規范,POST表示可能修改變伺服器上的資源的請求 。繼續引用上面的例子:還是新聞以網站為例,讀者對新聞發表自己的評論應該通過POST實現,因為在評論提交後站點的資源已經不同了,或者說資源被修改了。

表現形式區別:

HTTP請求:在HTTP請求中,第一行必須是啟搭一個請求行(request line),用來說明請求類型、要訪問的資源以及使用的HTTP版本。緊接著是一個首部(header)小節,用來說明伺服器要使用的附悄孝拿加信息。在首部之後是一個空行,再此之後可以添加任意的其他數據[稱之為主體(body)]。

兩種提交方式的區別:

(1)GET提交,請求的數據會附在URL之後(就是把數據放置在HTTP協議頭中),以?分割URL和傳輸數據,多個參數用&連接。如果數據是英文字母/數字,原樣發送,如果是空格,轉換為+,如果是中文/其他字元,則直接把字元串用BASE64加密,得出如: %E4%BD%A0%E5%A5%BD,其中%XX中的XX為該符號以16進製表示的ASCII。

POST提交:把提交的數據放置在是HTTP包的包體中。上文示例中紅色字體標明的就是實際的傳輸數據

因此,GET提交的數據會在地址欄中顯示出來,而POST提交,地址欄不會改變

(2)傳輸數據的大小:首先聲明:HTTP協議沒有對傳輸的數據大小進行限制,HTTP協議規范也沒有對URL長度進行限制。

而在實際開發中存在的限制主要有:

GET:特定瀏覽器和伺服器對URL長度有限制,例如IE對URL長度的限制是2083位元組(2K+35)。對於其他瀏覽器,如Netscape、FireFox等,理論上沒有長度限制,其限製取決於操作系統的支持。

因此對於GET提交時,傳輸數據就會受到URL長度的限制。

POST:由於不是通過URL傳值,理論上數據不受限。但實際各個WEB伺服器會規定對post提交數據大小進行限制,Apache、IIS6都有各自的配置。

8. php連接postgray資料庫怎麼實現

php.ini中將extension=php_pgsql.dll前面的分號去掉,然後設置extension_dir指向運御php文件下的ext文件夾。
或者直接把將./php/libpq.dll(php文件夾下的libpq.dll)和./php/ext/php_pgsql.dll(ext文件夾下的php_pgsql.dll)這兩個dll文件復制到旁叢岩C盤system32下。
正常情況下這樣鄭孫php就可以連接postgres了,但是我的仍然出錯,提示「Fatal error: Call to undefined function pg_connect()」,查看Apache的日誌,「PHP Startup: Unable to load dynamic library '****\\PHP5\\ext\\php_pdo_pgsql.dll」。
經過查找,在Apache中conf文件夾下的配置文件httpd.conf中添加 LoadFile "***/PHP5/libpq.dll",位置在LoadMole後面即可。
(***為php安裝路徑)

測試代碼:

<?php
$conn_string = "host=localhost port=5432 dbname=db_name user=your user password=your password" ;
$dbconn = pg_connect($conn_string);
if (!$dbconn)
echo "連接失敗!!!!!/r/n";
else
echo "連接成功!!!!!/r/n";
pg_close($dbconn);
?>

user一般為安裝期間新建的用戶postgres