真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

javascript查重,JS數(shù)組查重

什么是AJAX?

教程請(qǐng)到原文獲取:

蒙陰網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)!從網(wǎng)頁設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、成都響應(yīng)式網(wǎng)站建設(shè)等網(wǎng)站項(xiàng)目制作,到程序開發(fā),運(yùn)營(yíng)維護(hù)。創(chuàng)新互聯(lián)自2013年創(chuàng)立以來到現(xiàn)在10年的時(shí)間,我們擁有了豐富的建站經(jīng)驗(yàn)和運(yùn)維經(jīng)驗(yàn),來保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選創(chuàng)新互聯(lián)

AJAX準(zhǔn)備知識(shí):JSON

什么是 JSON ?

JSON 指的是 JavaScript 對(duì)象表示法(JavaScript Object Notation)

JSON 是輕量級(jí)的文本數(shù)據(jù)交換格式

JSON 獨(dú)立于語言 *

JSON 具有自我描述性,更易理解

* JSON 使用 JavaScript 語法來描述數(shù)據(jù)對(duì)象,但是 JSON 仍然獨(dú)立于語言和平臺(tái)。JSON 解析器和 JSON 庫(kù)支持許多不同的編程語言。

啥都別多說了,上圖吧!

合格的json對(duì)象:

["one", "two", "three"]{ "one": 1, "two": 2, "three": 3 }{"names": ["張三", "李四"] }[ { "name": "張三"}, {"name": "李四"} ]

不合格的json對(duì)象:

{ name: "張三", 'age': 32 } ?// 屬性名必須使用雙引號(hào)[32, 64, 128, 0xFFF] // 不能使用十六進(jìn)制值{ "name": "張三", "age": undefined } ?// 不能使用undefined{ "name": "張三",

"birthday": new Date('Fri, 26 Aug 2011 07:13:10 GMT'),

"getName": ?function() {return this.name;} ?// 不能使用函數(shù)和日期對(duì)象}

stringify與parse方法

JavaScript中關(guān)于JSON對(duì)象和字符串轉(zhuǎn)換的兩個(gè)方法:

JSON.parse(): 用于將一個(gè) JSON 字符串轉(zhuǎn)換為 JavaScript 對(duì)象 

JSON.parse('{"name":"Q1mi"}'); JSON.parse('{name:"Q1mi"}') ; // 錯(cuò)誤 JSON.parse('[18,undefined]') ; // 錯(cuò)誤

JSON.stringify(): 用于將 JavaScript 值轉(zhuǎn)換為 JSON 字符串?!?/p>

JSON.stringify({"name":"Q1mi"})

和XML的比較

JSON 格式于2001年由 Douglas Crockford 提出,目的就是取代繁瑣笨重的 XML 格式。

JSON 格式有兩個(gè)顯著的優(yōu)點(diǎn):書寫簡(jiǎn)單,一目了然;符合 JavaScript 原生語法,可以由解釋引擎直接處理,不用另外添加解析代碼。所以,JSON迅速被接受,已經(jīng)成為各大網(wǎng)站交換數(shù)據(jù)的標(biāo)準(zhǔn)格式,并被寫入ECMAScript 5,成為標(biāo)準(zhǔn)的一部分。

XML和JSON都使用結(jié)構(gòu)化方法來標(biāo)記數(shù)據(jù),下面來做一個(gè)簡(jiǎn)單的比較。

用XML表示中國(guó)部分省市數(shù)據(jù)如下:

?xml version="1.0" encoding="utf-8"?country

name中國(guó)/name

province

?name黑龍江/name

?cities

? ? ?city哈爾濱/city

? ? ?city大慶/city

?/cities

/province

province

?name廣東/name

?cities

? ? ?city廣州/city

? ? ?city深圳/city

? ? ?city珠海/city

?/cities

/province

province

?name臺(tái)灣/name

?cities

? ? ?city臺(tái)北/city

? ? ?city高雄/city

?/cities

/province

province

?name新疆/name

?cities

? ? ?city烏魯木齊/city

?/cities

/province/countryXML格式數(shù)據(jù)

XML格式數(shù)據(jù)

用JSON表示如下:

{

"name": "中國(guó)",

"province": [{

?"name": "黑龍江",

?"cities": {

? ? ?"city": ["哈爾濱", "大慶"]

?}

}, {

?"name": "廣東",

?"cities": {

? ? ?"city": ["廣州", "深圳", "珠海"]

?}

}, {

?"name": "臺(tái)灣",

?"cities": {

? ? ?"city": ["臺(tái)北", "高雄"]

?}

}, {

?"name": "新疆",

?"cities": {

? ? ?"city": ["烏魯木齊"]

?}

}]}JSON格式數(shù)據(jù)

JSON格式數(shù)據(jù)

由上面的兩端代碼可以看出,JSON 簡(jiǎn)單的語法格式和清晰的層次結(jié)構(gòu)明顯要比 XML 容易閱讀,并且在數(shù)據(jù)交換方面,由于 JSON 所使用的字符要比 XML 少得多,可以大大得節(jié)約傳輸數(shù)據(jù)所占用得帶寬。

AJAX簡(jiǎn)介

AJAX(Asynchronous Javascript And XML)翻譯成中文就是“異步的Javascript和XML”。即使用Javascript語言與服務(wù)器進(jìn)行異步交互,傳輸?shù)臄?shù)據(jù)為XML(當(dāng)然,傳輸?shù)臄?shù)據(jù)不只是XML)。

AJAX 不是新的編程語言,而是一種使用現(xiàn)有標(biāo)準(zhǔn)的新方法。

AJAX 最大的優(yōu)點(diǎn)是在不重新加載整個(gè)頁面的情況下,可以與服務(wù)器交換數(shù)據(jù)并更新部分網(wǎng)頁內(nèi)容。(這一特點(diǎn)給用戶的感受是在不知不覺中完成請(qǐng)求和響應(yīng)過程)

AJAX 不需要任何瀏覽器插件,但需要用戶允許JavaScript在瀏覽器上執(zhí)行。

同步交互:客戶端發(fā)出一個(gè)請(qǐng)求后,需要等待服務(wù)器響應(yīng)結(jié)束后,才能發(fā)出第二個(gè)請(qǐng)求;

異步交互:客戶端發(fā)出一個(gè)請(qǐng)求后,無需等待服務(wù)器響應(yīng)結(jié)束,就可以發(fā)出第二個(gè)請(qǐng)求。

示例

頁面輸入兩個(gè)整數(shù),通過AJAX傳輸?shù)胶蠖擞?jì)算出結(jié)果并返回。

!DOCTYPE htmlhtml lang="en"head

meta charset="UTF-8"

meta http-equiv="x-ua-compatible" content="IE=edge"

meta name="viewport" content="width=device-width, initial-scale=1"

titleAJAX局部刷新實(shí)例/title/headbodyinput type="text" id="i1"+input type="text" id="i2"=input type="text" id="i3"input type="button" value="AJAX提交" id="b1"script src="/static/jquery-3.2.1.min.js"/scriptscript

$("#b1").on("click", function () {

$.ajax({

url:"/ajax_add/",

type:"GET",

data:{"i1":$("#i1").val(),"i2":$("#i2").val()},

success:function (data) {

?$("#i3").val(data);

}

})

})/script/body/htmlHTML部分代碼

HTML部分代碼

def ajax_demo1(request):

return render(request, "ajax_demo1.html")

def ajax_add(request):

i1 = int(request.GET.get("i1"))

i2 = int(request.GET.get("i2"))

ret = i1 + i2

return JsonResponse(ret, safe=False)

views.py

views.py

rlpatterns = [

...

url(r'^ajax_add/', views.ajax_add),

url(r'^ajax_demo1/', views.ajax_demo1),

... ?

]

urls.py

AJAX常見應(yīng)用情景

搜索引擎根據(jù)用戶輸入的關(guān)鍵字,自動(dòng)提示檢索關(guān)鍵字。

還有一個(gè)很重要的應(yīng)用場(chǎng)景就是注冊(cè)時(shí)候的用戶名的查重。

其實(shí)這里就使用了AJAX技術(shù)!當(dāng)文件框發(fā)生了輸入變化時(shí),使用AJAX技術(shù)向服務(wù)器發(fā)送一個(gè)請(qǐng)求,然后服務(wù)器會(huì)把查詢到的結(jié)果響應(yīng)給瀏覽器,最后再把后端返回的結(jié)果展示出來。

整個(gè)過程中頁面沒有刷新,只是刷新頁面中的局部位置而已!

當(dāng)請(qǐng)求發(fā)出后,瀏覽器還可以進(jìn)行其他操作,無需等待服務(wù)器的響應(yīng)!

當(dāng)輸入用戶名后,把光標(biāo)移動(dòng)到其他表單項(xiàng)上時(shí),瀏覽器會(huì)使用AJAX技術(shù)向服務(wù)器發(fā)出請(qǐng)求,服務(wù)器會(huì)查詢名為lemontree7777777的用戶是否存在,最終服務(wù)器返回true表示名為lemontree7777777的用戶已經(jīng)存在了,瀏覽器在得到結(jié)果后顯示“用戶名已被注冊(cè)!”。

整個(gè)過程中頁面沒有刷新,只是局部刷新了;

在請(qǐng)求發(fā)出后,瀏覽器不用等待服務(wù)器響應(yīng)結(jié)果就可以進(jìn)行其他操作;

AJAX的優(yōu)缺點(diǎn)

優(yōu)點(diǎn):

AJAX使用JavaScript技術(shù)向服務(wù)器發(fā)送異步請(qǐng)求;

AJAX請(qǐng)求無須刷新整個(gè)頁面;

因?yàn)榉?wù)器響應(yīng)內(nèi)容不再是整個(gè)頁面,而是頁面中的部分內(nèi)容,所以AJAX性能高;

jQuery實(shí)現(xiàn)的AJAX

最基本的jQuery發(fā)送AJAX請(qǐng)求示例:

!DOCTYPE htmlhtml lang="zh-CN"head

meta charset="UTF-8"

meta http-equiv="x-ua-compatible" content="IE=edge"

meta name="viewport" content="width=device-width, initial-scale=1"

titleajax test/title

script src=""/script/headbodybutton id="ajaxTest"AJAX 測(cè)試/buttonscript

$("#ajaxTest").click(function () {

$.ajax({ ? ? ?url: "/ajax_test/", ? ? ?type: "POST", ? ? ?data: {username: "Q1mi", password: 123456}, ? ? ?success: function (data) {

?alert(data)

}

})

})/script/body/html

views.py:

def ajax_test(request): user_name = request.POST.get("username") password = request.POST.get("password") print(user_name, password) return HttpResponse("OK")

$.ajax參數(shù)

data參數(shù)中的鍵值對(duì),如果值值不為字符串,需要將其轉(zhuǎn)換成字符串類型。

def ajax_test(request):

user_name = request.POST.get("username")

password = request.POST.get("password")

print(user_name, password)

return HttpResponse("OK")

JS實(shí)現(xiàn)AJAX

var b2 = document.getElementById("b2");

b2.onclick = function () {

// 原生JS ? ?var xmlHttp = new XMLHttpRequest();

xmlHttp.open("POST", "/ajax_test/", true);

xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");

xmlHttp.send("username=q1mipassword=123456");

xmlHttp.onreadystatechange = function () {

if (xmlHttp.readyState === 4 xmlHttp.status === 200) {

?alert(xmlHttp.responseText);

}

};

};

AJAX請(qǐng)求如何設(shè)置csrf_token

方式1

通過獲取隱藏的input標(biāo)簽中的csrfmiddlewaretoken值,放置在data中發(fā)送。

$.ajax({ ?url: "/cookie_ajax/", ?type: "POST", ?data: {

"username": "Q1mi",

"password": 123456,

"csrfmiddlewaretoken": $("[name = 'csrfmiddlewaretoken']").val() ?// 使用jQuery取出csrfmiddlewaretoken的值,拼接到data中 ?}, ?success: function (data) {

console.log(data);

}})

方式2

通過獲取返回的cookie中的字符串 放置在請(qǐng)求頭中發(fā)送。

注意:需要引入一個(gè)jquery.cookie.js插件。

$.ajax({ ?url: "/cookie_ajax/", ?type: "POST", ?headers: {"X-CSRFToken": $.cookie('csrftoken')}, ?// 從Cookie取csrftoken,并設(shè)置到請(qǐng)求頭中 ?data: {"username": "Q1mi", "password": 123456}, ?success: function (data) {

console.log(data);

}})

或者用自己寫一個(gè)getCookie方法:

function getCookie(name) {

var cookieValue = null;

if (document.cookie document.cookie !== '') {

?var cookies = document.cookie.split(';');

?for (var i = 0; i cookies.length; i++) {

? ? ?var cookie = jQuery.trim(cookies[i]);

? ? ?// Does this cookie string begin with the name we want? ? ? ? ? ? ?if (cookie.substring(0, name.length + 1) === (name + '=')) {

? ? ? ? ?cookieValue = decodeURIComponent(cookie.substring(name.length + 1));

? ? ? ? ?break;

? ? ?}

?}

}

return cookieValue;}var csrftoken = getCookie('csrftoken');

每一次都這么寫太麻煩了,可以使用$.ajaxSetup()方法為ajax請(qǐng)求統(tǒng)一設(shè)置。

function csrfSafeMethod(method) {

// these HTTP methods do not require CSRF protection ?return (/^(GET|HEAD|OPTIONS|TRACE)$/.test(method));}$.ajaxSetup({ ?beforeSend: function (xhr, settings) {

if (!csrfSafeMethod(settings.type) !this.crossDomain) {

xhr.setRequestHeader("X-CSRFToken", csrftoken);

}

}});

注意:

如果使用從cookie中取csrftoken的方式,需要確保cookie存在csrftoken值。

如果你的視圖渲染的HTML文件中沒有包含 {% csrf_token %},Django可能不會(huì)設(shè)置CSRFtoken的cookie。

這個(gè)時(shí)候需要使用ensure_csrf_cookie()裝飾器強(qiáng)制設(shè)置Cookie。

django.views.decorators.csrf import ensure_csrf_cookie @ensure_csrf_cookie def login(request): pass

更多細(xì)節(jié)詳見:Djagno官方文檔中關(guān)于CSRF的內(nèi)容

AJAX上傳文件

XMLHttpRequest 是一個(gè)瀏覽器接口,通過它,我們可以使得 Javascript 進(jìn)行 HTTP (S) 通信。XMLHttpRequest 在現(xiàn)在瀏覽器中是一種常用的前后臺(tái)交互數(shù)據(jù)的方式。2008年 2 月,XMLHttpRequest Level 2 草案提出來了,相對(duì)于上一代,它有一些新的特性,其中 FormData 就是 XMLHttpRequest Level 2 新增的一個(gè)對(duì)象,利用它來提交表單、模擬表單提交,當(dāng)然最大的優(yōu)勢(shì)就是可以上傳二進(jìn)制文件。下面就具體

首先看一下formData的基本用法:FormData對(duì)象,可以把所有表單元素的name與value組成一個(gè)queryString,提交到后臺(tái)。只需要把 form 表單作為參數(shù)傳入 FormData 構(gòu)造函數(shù)即可:

介紹一下如何利用 FormData 來上傳文件。

django.views.decorators.csrf import ensure_csrf_cookie@ensure_csrf_cookiedef login(request):

pass

或者使用

var form = document.getElementById("form1"); var fd = new FormData(form);

這樣也可以直接通過ajax 的 send() 方法將 fd 發(fā)送到后臺(tái)。

注意:由于 FormData 是 XMLHttpRequest Level 2 新增的接口,現(xiàn)在 低于IE10 的IE瀏覽器不支持 FormData。

練習(xí)(用戶名是否已被注冊(cè))

功能介紹

在注冊(cè)表單中,當(dāng)用戶填寫了用戶名后,把光標(biāo)移開后,會(huì)自動(dòng)向服務(wù)器發(fā)送異步請(qǐng)求。服務(wù)器返回這個(gè)用戶名是否已經(jīng)被注冊(cè)過。

案例分析

頁面中給出注冊(cè)表單;

在username input標(biāo)簽中綁定onblur事件處理函數(shù)。

當(dāng)input標(biāo)簽失去焦點(diǎn)后獲取 username表單字段的值,向服務(wù)端發(fā)送AJAX請(qǐng)求;

django的視圖函數(shù)中處理該請(qǐng)求,獲取username值,判斷該用戶在數(shù)據(jù)庫(kù)中是否被注冊(cè),如果被注冊(cè)了就返回“該用戶已被注冊(cè)”,否則響應(yīng)“該用戶名可以注冊(cè)”。

序列化

Django內(nèi)置的serializers

def books_json(request): book_list = models.Book.objects.all()[0:10] from django.core import serializers ret = serializers.serialize("json", book_list) return HttpResponse(ret)

補(bǔ)充一個(gè)SweetAlert插件示例

點(diǎn)擊下載Bootstrap-sweetalert項(xiàng)目。

$(".btn-danger").on("click", function () {

swal({ ? ?title: "你確定要?jiǎng)h除嗎?", ? ?text: "刪除可就找不回來了哦!", ? ?type: "warning", ? ?showCancelButton: true, ? ?confirmButtonClass: "btn-danger", ? ?confirmButtonText: "刪除", ? ?cancelButtonText: "取消", ? ?closeOnConfirm: false

},

function () {

var deleteId = $(this).parent().parent().attr("data_id");

$.ajax({ ? ? ? ?url: "/delete_book/", ? ? ? ?type: "post", ? ? ? ?data: {"id": deleteId}, ? ? ? ?success: function (data) {

? ?if (data.status === 1) {

? ? ?swal("刪除成功!", "你可以準(zhǔn)備跑路了!", "success");

? ?} else {

? ? ?swal("刪除失敗", "你可以再嘗試一下!", "error")

? ?}

?}

})

});})

原文:AJAX -?

作者:Q1mi -?

出自:博客園-

AJAX路線圖

AJAX教程

需要教程得可以留言“AJAX”看到后會(huì)發(fā)給你們

用jquery新增一條字典,那么字典的ID是隨機(jī)生成的還是怎么的

就是先生成一個(gè)范圍數(shù)組,然后數(shù)組打亂順序,截取你需要的個(gè)數(shù)即為所求(不過這種方式在火狐瀏覽器下并不是很隨機(jī),多刷新幾次,你會(huì)發(fā)現(xiàn),很多時(shí)候還是很有規(guī)律的,甚至順序)

第二種接觸檢測(cè)json對(duì)象索引值來判斷查重處理

具體代碼如下

JavaScript code

/*

num 要產(chǎn)生多少個(gè)隨機(jī)數(shù)

from 產(chǎn)生隨機(jī)數(shù)的最小值

to 產(chǎn)生隨機(jī)數(shù)的最大值

*/

function createRandom(num ,from ,to )

{

var arr=[];

for(var i=from;i=to;i++)

arr.push(i);

arr.sort(function(){

return 0.5-Math.random();

});

arr.length=num;

return arr;

}

function createRandom2(num , from , to)

{

var arr=[];

var json={};

while(arr.lengthnum)

{

//產(chǎn)生單個(gè)隨機(jī)數(shù)

var ranNum=Math.ceil(Math.random()*(to-from))+from;

//通過判斷json對(duì)象的索引值是否存在 來標(biāo)記 是否重復(fù)

if(!json[ranNum])

{

json[ranNum]=1;

arr.push(ranNum);

}

}

return arr;

}

alert(createRandom2(10,0,50));//生成10個(gè)從0-50之間不重復(fù)的隨機(jī)數(shù)

常用的大數(shù)據(jù)工具有哪些?

未至科技魔方是一款大數(shù)據(jù)模型平臺(tái),是一款基于服務(wù)總線與分布式云計(jì)算兩大技術(shù)架構(gòu)的一款數(shù)據(jù)分析、挖掘的工具平臺(tái),其采用分布式文件系統(tǒng)對(duì)數(shù)據(jù)進(jìn)行存儲(chǔ),支持海量數(shù)據(jù)的處理。采用多種的數(shù)據(jù)采集技術(shù),支持結(jié)構(gòu)化數(shù)據(jù)及非結(jié)構(gòu)化數(shù)據(jù)的采集。通過圖形化的模型搭建工具,支持流程化的模型配置。通過第三方插件技術(shù),很容易將其他工具及服務(wù)集成到平臺(tái)中去。數(shù)據(jù)分析研判平臺(tái)就是海量信息的采集,數(shù)據(jù)模型的搭建,數(shù)據(jù)的挖掘、分析最后形成知識(shí)服務(wù)于實(shí)戰(zhàn)、服務(wù)于決策的過程,平臺(tái)主要包括數(shù)據(jù)采集部分,模型配置部分,模型執(zhí)行部分及成果展示部分等。

未至科技小蜜蜂網(wǎng)絡(luò)信息雷達(dá)是一款網(wǎng)絡(luò)信息定向采集產(chǎn)品,它能夠?qū)τ脩粼O(shè)置的網(wǎng)站進(jìn)行數(shù)據(jù)采集和更新,實(shí)現(xiàn)靈活的網(wǎng)絡(luò)數(shù)據(jù)采集目標(biāo),為互聯(lián)網(wǎng)數(shù)據(jù)分析提供基礎(chǔ)。

未至科技泵站是一款大數(shù)據(jù)平臺(tái)數(shù)據(jù)抽取工具,實(shí)現(xiàn)db到hdfs數(shù)據(jù)導(dǎo)入功能,借助Hadoop提供高效的集群分布式并行處理能力,可以采用數(shù)據(jù)庫(kù)分區(qū)、按字段分區(qū)、分頁方式并行批處理抽取db數(shù)據(jù)到hdfs文件系統(tǒng)中,能有效解決大數(shù)據(jù)傳統(tǒng)抽取導(dǎo)致的作業(yè)負(fù)載過大抽取時(shí)間過長(zhǎng)的問題,為大數(shù)據(jù)倉(cāng)庫(kù)提供傳輸管道。

未至科技云計(jì)算數(shù)據(jù)中心以先進(jìn)的中文數(shù)據(jù)處理和海量數(shù)據(jù)支撐為技術(shù)基礎(chǔ),并在各個(gè)環(huán)節(jié)輔以人工服務(wù),使得數(shù)據(jù)中心能夠安全、高效運(yùn)行。根據(jù)云計(jì)算數(shù)據(jù)中心的不同環(huán)節(jié),我們專門配備了系統(tǒng)管理和維護(hù)人員、數(shù)據(jù)加工和編撰人員、數(shù)據(jù)采集維護(hù)人員、平臺(tái)系統(tǒng)管理員、機(jī)構(gòu)管理員、輿情監(jiān)測(cè)和分析人員等,滿足各個(gè)環(huán)節(jié)的需要。面向用戶我們提供面向政府和面向企業(yè)的解決方案。

未至科技顯微鏡是一款大數(shù)據(jù)文本挖掘工具,是指從文本數(shù)據(jù)中抽取有價(jià)值的信息和知識(shí)的計(jì)算機(jī)處理技術(shù),

包括文本分類、文本聚類、信息抽取、實(shí)體識(shí)別、關(guān)鍵詞標(biāo)引、摘要等。基于Hadoop

MapReduce的文本挖掘軟件能夠?qū)崿F(xiàn)海量文本的挖掘分析。CKM的一個(gè)重要應(yīng)用領(lǐng)域?yàn)橹悄鼙葘?duì),

在專利新穎性評(píng)價(jià)、科技查新、文檔查重、版權(quán)保護(hù)、稿件溯源等領(lǐng)域都有著廣泛的應(yīng)用。

未至科技數(shù)據(jù)立方是一款大數(shù)據(jù)可視化關(guān)系挖掘工具,展現(xiàn)方式包括關(guān)系圖、時(shí)間軸、分析圖表、列表等多種表達(dá)方式,為使用者提供全方位的信息展現(xiàn)方式。

PHP注冊(cè)系統(tǒng)查找是否數(shù)據(jù)庫(kù)重名問題

是不是重名了系統(tǒng)不報(bào)告,需要檢查下面的查重代碼:

$check_query = mysql_query("select uid from user where nicheng='$name' or users='$email' limit 1");

? ? ? ?if(mysql_fetch_array($check_query)){

echo '錯(cuò)誤:用戶名 ',$name,'或',$email,' 已存在。a href="javascript:history.back(-1);"返回/a';

exit;

}

你這個(gè)代碼現(xiàn)在的問題是沒有檢測(cè)mysql_query的結(jié)果,有可能這個(gè)語句是失敗的,那么下面的查重永遠(yuǎn)都得不到滿足。應(yīng)該在數(shù)據(jù)庫(kù)查詢后檢測(cè)查詢語句是否成功,我修改如下,如果運(yùn)行時(shí)候有報(bào)錯(cuò)請(qǐng)根據(jù)報(bào)錯(cuò)復(fù)查你的SQL語句:

$sql="select?uid?from?user?where?nicheng='$name'?or?users='$email'?limit?1";

if?($check_query?=?mysql_query($sql)){

if(mysql_fetch_array($check_query)){

echo?'錯(cuò)誤:用戶名?',$name,'或',$email,'?已存在。a?href="javascript:history.back(-1);"返回/a';

exit;

}

mysql_free_result($check_query);

}else?echo?"檢查重名失敗,SQL:$sqlbr錯(cuò)誤:".mysql_error();

JavaScript中的文本(包括鍵入的文本跟本來頁面上就有的文本)怎么查重 跟數(shù)組是一樣的嘛 求個(gè)代碼

!DOCTYPE?html

html

head

meta?http-equiv="Content-Type"?content="text/html;?charset=UTF-8"

titleRunJS?演示代碼/title

script

var?map={};

var?reg=/^\s+|\s+$/g;

onload=function(){

var?ul=document.getElementById("ul");

var?lis=ul.getElementsByTagName('li');

for(var?i=0;ilis.length;i++){

map[lis[i].innerHTML.replace(reg,"")]=1;

}

}

var?ok=function(frm){

var?ul=document.getElementById("ul");

var?v=frm.tt.value.replace(reg,"");

if(null==map[v]){

var?li=document.createElement("li");

li.innerHTML=v;

ul.appendChild(li);

map[v]=1;

}else{

alert("“"?+?v?+?"”"?+?"?已經(jīng)存在!");

}

}

/script

/head

body

form?onsubmit="return?false;"

input?type="text"?name="tt"?/input?type="submit"?value="OK"?onclick="ok(this.form)"/

ul?id="ul"

?li蘋果/li

li香蕉/li

li橘子/li

li葡萄/li

/ul/form

/body

/html


名稱欄目:javascript查重,JS數(shù)組查重
網(wǎng)頁鏈接:http://weahome.cn/article/dsejhpc.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部