ホームページ > バックエンド開発 > PHPチュートリアル > フォーム送信時の重複データ検証の問題について教えてください。

フォーム送信時の重複データ検証の問題について教えてください。

WBOY
リリース: 2016-06-20 12:45:31
オリジナル
825 人が閲覧しました

<!DOCTYPE html><html lang="zh-cmn-Hans"><head><meta charset="utf-8"><title></title><meta name="viewport" content="width=device-width,initial-scale=1,user-scalable=no" /><meta name="apple-mobile-web-app-capable" content="yes" /><meta name="apple-mobile-web-app-status-bar-style" content="black" /><meta name="format-detection"content="telephone=no, email=no" /><meta name="apple-mobile-web-app-capable" content="yes" /><meta name="apple-mobile-web-app-status-bar-style" content="black" /><meta name="format-detection" content="telphone=no, email=no" /><meta name="renderer" content="webkit"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="HandheldFriendly" content="true"><meta name="MobileOptimized" content="320"><meta name="screen-orientation" content="portrait"><meta name="x5-orientation" content="portrait"><meta name="full-screen" content="yes"><meta name="x5-fullscreen" content="true"><meta name="browsermode" content="application"><meta name="x5-page-mode" content="app"><meta name="msapplication-tap-highlight" content="no"><link href="/cssjs/img/favicon.ico?2015080119" rel="shortcut icon" type="image/x-icon" /><link href="/cssjs/css.css?2015080119" rel="stylesheet" type="text/css" /><script src="//apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js" type="text/javascript"></script></head><body><script type="text/javascript" src="/js/global.js"></script><form id="myform"><input id="url" name='url' type='hidden'><table cellSpacing="3" cellPadding="3" border="0" width="98%"><tr><input id="tel" name="tel" type="text"/><input id="submit" type="button" onclick="formone()" value="提交"/></td></tr></table></form></body></html>
ログイン後にコピー

function formone(){var tel=jQuery("#tel").val();var telreg=/^((\d{11})|^((\d{7,8})|(\d{4}|\d{3})-(\d{7,8})|(\d{4}|\d{3})-(\d{7,8})-(\d{4}|\d{3}|\d{2}|\d{1})|(\d{7,8})-(\d{4}|\d{3}|\d{2}|\d{1}))$)$/;if(tel==""){alert("请输入您的联系电话!");jQuery("#tel").focus();return false;}else if(!telreg.test(tel)){alert("请输入正确的联系电话!");jQuery("#tel").focus();return false;}else{jQuery.ajax({url:'submit.php',data:{tel:jQuery("#tel").val()},type:'post',dataType:'text',success:function(msg){if(parseInt(msg)!=0){alert("提交成功,点击确定进入抽奖页面...");window.location.href="http://xx.com/sitefiles/services/weixin/lottery/bigwheel.html?lotteryID=1&publishmentSystemID=1&wxOpenID=&_r=6272"}else{alert("提交失败,请直接在线咨询或者拨打000官方电话!");}}})}}
ログイン後にコピー


<?phpdefine('INCLUDE_CHECK',1);require_once('connect.php');//连接数据库$tel=stripslashes($_POST['tel']);$time=date('Y年m月d日H时i分s秒',time());if(isset($_POST['tel']) && !empty($_POST['tel'])){$query=mysql_query("insert into tel(tel,time)values('$tel','$time')");}?>
ログイン後にコピー


ウェブページを開いて電話番号を入力欄に送信し、閉じて再度開いて電話番号を入力します番号を再度送信する方法はありますか?


ディスカッションへの返信 (解決策)

この番号がある場合は、データベースに直接挿入できません。この番号がある場合、挿入することはできません。

これは...

mysql_query select は、戻りがある場合に電話番号 xxx を使用してデータをクエリします。この値は、この番号が存在することを意味し、この番号がすでに存在することをユーザーに示します。それ以外の場合は、

を挿入します。 閉じる 「削除して再度開く」とはどういう意味ですか?



オフとオンとはどういう意味ですか?

if(! mysql_num_rows(mysql_query("select * from tel where tel='$tel'))) {  $query=mysql_query("insert into tel(tel,time)values('$tel','$time')");}
ログイン後にコピー

ユーザーが電話送信ページを閉じ、再度開いて再度入力すると、データベースに重複した値が存在します

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート