1. 程式人生 > >web開發技術初探

web開發技術初探

最近在弄wordpress, 想弄一個自己的部落格,wordPress是用php寫的一套部落格框架,所以順道學了一下phptutorial。

對於web開發技術中眼花繚亂的開發語言,覺得很迷惘,所以又花了寫時間對一些語言進行了總結和分類,希望對以後有些幫助。

一些概念介紹:

1.      Web Server: 也可以是web Container, 用於部署webproject, 用於處理webclient 端來的請求,同時生成response返回,等等, 現有的具體的web Server 有要錢的IIS和免費的Apache。

2.      Server Side code: 是指在webServer端解析和執行的程式碼,現有的一些server端語言有(PHP,ASP, Perl,  JSP)。

3.      Client Side code: 是指在webclient 端(webbrowser)端解析和執行的程式碼,比如(JavaScript(JS),html)。

4.       Client 端程式碼比較常用的就是JS和html了,而Server端的語言有很多種選擇,不論選擇PHP,ASP, perl還是JSP, 都能處理client端返回的請求,這裡不討論哪些語言好,哪些語言不好。 對於不同的Server端語言,選擇不同的web Server支援,如果 選擇ASP,就選擇微軟的IIS作為webserver。如果 選擇PHP, 選擇Apache作為webserver。如果選擇JSP,選擇Apachetomcat 作為webserver, 選擇perl語言, 就不知道用什麼webserver了。

一般的網站的邏輯部署圖如下:

 

使用者通過瀏覽器訪問網路另一端的web Server,對於一個網站來說,web Server只是作為一個後臺服務的接入層,客戶和後來邏輯的中間層,web server 解析Client端的http請求,webserver 訪問後臺相應的應用邏輯伺服器,獲取相應的資料和邏輯處理,webserver等待後臺邏輯的返回,生成相應的httpResponse。

簡單的Web Client 和 Web Server互動流程圖:


1.      使用者通過web browser訪問網站,獲取ClientSide的網頁。

2.      Web Server找到相應的網頁,分裝成response返回。

3.      Web browser在得到 client side的網頁時,要對網頁進行渲染,解析和執行JS程式碼。

4.      如果需要從server端獲取資料時,通過Get或則POST方法,向webServer傳送httpRequest.

5.      Web Server在接收到httpRequest後,找到相應的server端程式碼來對httpRequest進行解析,生成相應的httpResponse 返回給web browser.

6.      Web browser在接收到http Response之後設定相應的資料,生成動態的網頁。

Client端 JS  sample程式碼:

<html>
<head>
<script type="text/javascript">
//該函式會在下面選擇form中被觸發
function showUser(str)
{
if (str=="")
  {
 document.getElementById("txtHint").innerHTML="";
  return;
  } 
//構建httpRequest
if (window.XMLHttpRequest)
  {// code for IE7+, Firefox, Chrome, Opera,Safari
  xmlhttp=new XMLHttpRequest();
  }
else
  {// code for IE6, IE5
  xmlhttp=newActiveXObject("Microsoft.XMLHTTP");
  }
//為httpReqest設定回撥函式,當response返回時被觸發
xmlhttp.onreadystatechange=function()
  {
  if (xmlhttp.readyState==4 &&xmlhttp.status==200)
    {
   document.getElementById("txtHint").innerHTML=xmlhttp.responseText;
    }
  }
//初始化httpRequest,通過Get方法發出Request
//指定server side的get user.php處理該Request, 同時給了個引數q
xmlhttp.open("GET","getuser.php?q="+str,true);
xmlhttp.send();
}
</script>
</head>
<body>

<form>
<select name="users"onchange="showUser(this.value)">
<option value="">Select aperson:</option>
<option value="1">PeterGriffin</option>
<option value="2">LoisGriffin</option>
<option value="3">GlennQuagmire</option>
<option value="4">JosephSwanson</option>
</select>
</form>
<br />
<div id="txtHint"><b>Personinfo will be listed here.</b></div>

</body>
</html>


Server端PHP sample程式碼:

<?php
//獲得Get 方法中的q引數
$q=$_GET["q"];

//連結本地資料庫
$con = mysql_connect('localhost', 'peter','abc123');
if (!$con)
  {
  die('Could not connect: ' .mysql_error());
  }

mysql_select_db("ajax_demo", $con);

//構建和執行SQL語句
$sql="SELECT * FROM user WHERE id ='".$q."'";
$result = mysql_query($sql);

//構建HTTPResponse,直接echo.
echo "<table border='1'>
<tr>
<th>Firstname</th>
<th>Lastname</th>
<th>Age</th>
<th>Hometown</th>
<th>Job</th>
</tr>";

while($row = mysql_fetch_array($result))
  {
  echo "<tr>";
  echo "<td>" .$row['FirstName'] . "</td>";
  echo "<td>" .$row['LastName'] . "</td>";
  echo "<td>" .$row['Age'] . "</td>";
  echo "<td>" .$row['Hometown'] . "</td>";
  echo "<td>" .$row['Job'] . "</td>";
  echo "</tr>";
  }
echo "</table>";

//最後關閉資料庫連結
mysql_close($con);
?>


相關推薦

web開發技術初探

最近在弄wordpress, 想弄一個自己的部落格,wordPress是用php寫的一套部落格框架,所以順道學了一下phptutorial。 對於web開發技術中眼花繚亂的開發語言,覺得很迷惘,所以又花了寫時間對一些語言進行了總結和分類,希望對以後有些幫助。 一些概念介紹:

Web開發的發展史---Web開發技術的演變

即使 包括 另一個 dlink 演變 取數據 等待 php 概念 轉自:http://blog.csdn.net/zzzkk2009/article/details/9849431 在接下來的幾個月時間裏,我打算寫一系列關於完整web開發的文章。這第一篇文章雖然有所

零基礎學習web開發技術總結分享

研究 無奈 defined attr 以及 同學 動效 add 執行 1、 opacity與RGBA 對元素進行透明度的設置時,經常用到的有opacity與background -color:rgba(),但兩者有所不同;對比:rgba()和opacity都能實現透明效果,

2019-Web開發技術指南和趨勢

這是一個2019年你成為前端,後端或全棧開發者的進階指南: 你不需要學習所有的技術成為一個web開發者 這個指南只是通過簡單分類列出了技術選項 我將從我的經驗和參考中給出建議 首選我們會介紹通用的知識, 最後介紹2019年的Web的一些趨勢 1. 基礎前端開發者 1.1 HTML

Web開發技術發展史話

  討論Web開發技術的歷史,當然要先說說Web的起源。眾所周知,Web這個Internet上最熱門的應用架構是由Tim Berners-Lee發明的。Web的前身是1980年Tim Berners-Lee負責的Enquire(Enquire Within Upon Everything的簡稱)專案。1990

(Java Web開發技術與實戰專案)第二章 JSP資料互動(一)

1,使用JSP實現使用者登入,登陸後顯示管理員資訊 <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE h

Java web開發技術 第二章

2 <%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD

web複習】WEB開發技術基礎知識整理(1)

WEB開發技術基礎知識整理(1) 第一部分——HTML 簡介 全稱超文字標記語言,有一系列標籤組成,文件包含標籤以及文字內容。 允許嵌入影象,物件,表單,結構化資訊;允許引入css,js影響網頁。 網

Web開發技術發展歷史

本文由David創作,文章轉自天碼營 Web的誕生 提到Web,不得不提一個詞就是“網際網路”。Web是World Wide Web的簡稱,中文譯為全球資訊網。“全球資訊網”和我們經常說的“網際網路”是兩個聯絡極其緊密但卻不盡相同的概念。今天“網際網路”三個字已經承載

Web開發技術應用系統設計報告

題    目:           圖書推薦系統               一、系統設計意義及目的 本系統的設計主要用於為讀者推薦各個領域中比較優質書籍,而且讀者可在本系統中根據自己所要的書籍的關鍵字或對應的篩選條件自動搜尋出適當的書籍,搜尋到的書

月薪過萬的高級web開發工程師會哪些技術

web開發web開發不同於網頁設計,是網頁設計的深化,更關註於網站如何交互和瀏覽。web前端開發人員使用的技術CSS和HTML、JavaScript,根據設計師設計的雛形來編寫代碼。布局,框架,瀏覽器涉及到不同的領域知識廣度,把網站界面更好地呈現給用戶。一個合格的web開發工程師,月薪過萬的高級web開發工程

用ASP.NET Web API技術開發HTTP接口(一)

ble 身份驗證 刪除 發現 bapi try prot 好用 get 開發工具 Visual Studio 2013 SQL Server 2008 R2 準備工作 啟動Visual Studio 2013,新建一個ASP.NET Web應用程序,命名為SimpleAPI

Servlet開發技術,創建,以及Servlet的配置,web.xml的配置

pla 註意事項 sets getwriter 復制代碼 pac todo oge getc 直接上圖,不廢話!!! 第一:首先在Eclipse的包資源管理器中,單機鼠標右鍵,在彈出的快捷鍵菜單中選擇“新建”/Servlet命令,在彈出的對話框中輸

移動端web開發初探之Vuejs的簡單實戰

參考 細節 重要 進行 標簽 樣式 mob 優化 view 這段時間在做的東西,是北郵人論壇APP的註冊頁。這個註冊頁是內嵌的網頁,因為打算安卓和IOS平臺同時使用。因此實際上就是在做移動端的web開發了。 在這過程中遇到了不少有意思的東西。 DEMO的github地址在這

極客學院Web前端開發技術實戰視頻教程 初級入門+高級實戰++專家課程+面試指導

inpu IT 添加 BE works 表達 引入 lap loop ===============課程目錄===============├<初級中級>│ ├<1. HTML5開發前準備>│ │ ├1.HTML5開發前準備.mp4│ │ └

Python+Flask+MysqL的web建設技術開發一個網站

用戶輸入 per IE 擴展 問題 _file__ 擁有 內容 根據 一、摘要 flask是一個很精簡,靈活的框架,對於web的開發非常的好,具有jinja2強大的模板引擎的支持。flask框架的一個擴展就是sqlalchemy, sqlalcheny是flask的一個擴展

沿用Python+Flask+Mysql的web建設技術開發網站

ref 默認 修改密碼 save esc 代碼 程序 興趣 switch 1 系統概要說明 1.1 開發目的 閑暇時光想看看電影?我要看些什麽好呢?百度推薦出來的爛片也不在其數,如果有一個真實反映影片的平臺該多好,這就是淘智寶的產生,為電影連續劇愛好人群提供一

基於SSM的Java Web應用開發原理初探

SSM開發Web的框架已經很成熟了,成熟得以至於有點落後了。雖然如今是SOA架構大行其道,微服務鋪天蓋地的時代,不過因為仍有大量的企業開發依賴於SSM,本文簡單對基於SSM的Java開發做一快速入門,方便讀者儘快把握脈絡,理解Java Web開發的主軸,便於做進一步深入學習。 關於第一代MVC開發可見:Ja

web前端開發技術之淺談對HTML5 智能表單的理解

提示 goods 表單 加載完成 空格 日期和時間 url 顯示 指向 Html5新增input的form屬性,用於指向特定form表單的id,實現input無需放在form標簽之中,即可通過表單進行提交。 <FORM id=xinzeng> … </FO

用ASP.NET Web API技術開發HTTP介面

開發工具 Visual Studio 2013 SQL Server 2008 R2 準備工作 啟動Visual Studio 2013,新建一個ASP.NET Web應用程式,命名為SimpleAPI。選擇Empty模板,並勾選“Web API”,無身份驗證,不新增單元測試。 準備用SQL S