2 jinshengxi JinShengXi 于 2014.11.30 22:51 提问

onsubmit触发事件把表单数据发送到相关php处理问题

问题详情:onsubmit触发事件把表单数据发送到相关php处理但是如何避免数据有问题时也会触发事件呢?

function dosubmit() { window.open('num3.php?cf='+window.form.cf.value+'&cf1='+window.form.cf1.value); }


<?php

require_once('appvars.php');
require_once('connectvars.php');

if(isset($_POST['submit'])){ //第10行

$name=$_POST['name'];
$score=$_POST['score'];
$st=$_FILES['st']['name'];
$st_type=$_FILES['st']['type'];
$st_size=$_FILES['st']['size'];
$output_form=false;

if( empty($name) || empty($score) || empty($st))
{
echo'Something is wrong !
';
$output_form=true;
}
//第20行
else{

if( (($st_type=='image/gif')||($st_type=='image/jpeg')||($st_type=='image/pjeg')||($st_type=='image/png')) && ($st_size >0) && ($st_size <=MAX_FILE_SIZE) )
{

if($_FILES['st']['error']==0){

$target=GW_UPLOADPATH .$st;
//第30行

if(move_uploaded_file($_FILES['st']['tmp_name'],$target)){

$dbc=mysqli_connect(HOST,USER,PASSWORD,NAME);

$st=$_FILES['st']['name'];
$query="INSERT INTO b (date,st,score,name)".
"VALUES(NOW(),'$st','$score','$name')";
//第40行

mysqli_query($dbc,$query)
or die('UU');

echo'You are success to add dates to Mysql '.'<br>';
echo 'Name :'.$name.'<br>';
echo 'Score : '.$score.'<br>';
echo 'Photo :'.'<img src="'.GW_UPLOADPATH.$st.'" >';
                //第50行          
echo'<p><a href="index.php">Back to index page</a></p>';

//clear the score datas
$name="";
$score="";
$st="";

mysqli_close($dbc);

}//if(move_uploaded_f

else
{
echo $_FILES['st']['error'];
echo'
文件没有移动成功 !!';//第60行

}

}//if($_FILES['st']['error']

else
echo'There is something wrong to upload the file ! Plese upload it agian.';

}//if(($st_type=='image/gif'

else echo'

The screen pic must be a GIF,JPEG, or PNG image and the file '.'size must fit '.'(MAX_FILE_SIZE/1024)'.'KB.

';
}//else
                //第70行

//Try to delete the temporary screen shot image file.

@unlink($_FILES['st']['tmp_name']);

}else $output_form=true;

if($output_form){
?>

Your name:
Your score:
Your Photo:
商品交易; 商品互换;

<?php } ?>


3个回答

caozhy
caozhy   Ds   Rxr 2014.12.01 02:55

在处理函数的开头加上一些前置检查,如果不符合就不再继续执行,直接返回,提示数据不合法就行了呗。

xuzuning
xuzuning   Ds   Rxr 2014.12.01 09:30

当 onsubmit 触发事件的处理函数返回 false 时,表单不会被提交

showbo
showbo   Ds   Rxr 2014.12.01 10:47

表单onsubmit事件检查你的数据,不通过return false
<br> function check(f){<br> if(f.un.value==&#39;&#39;){alert(&#39;请输入用户名!&#39;);f.un.focus();return false}<br> //...其他的<br> }<br>




Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
表单的提交onsubmit事件
看代码 留个记录: function func(){ alert('false'); return false; } this.form.submit(); //绕过onsubmit事件验证直接提交表单 this.form.onsubmit(); //调用form
【onsubmit】Form表单onsubmit事件用法详解
表单提交数据时,我们有时会用到onsubmit事件,那么onsubmit事件到底是干什么用的,在什么时候触发onsubmit事件以及如何使用onsubmit。本文章将向大家详细讲解onsubmit事件的工作机制和使用方法。 function submitFun(){       alert("111"); } 上面实例中,当"提交"按钮被点击时,会触发表单的on
submit方法与onsubmit事件
一.form的submit方法是否会触发onsubmit事件? 测试代码如下: var obj = document.getElementById('myform'); obj.onsubmit = function(){ alert('check'); retur
submit() 方法不触发 onsubmit事件
代码: <!--var form = document.getElementById(form1); form.onsubmit = function() { alert(1); }; // --> ok按键是不会触发alert(1);
form表单的onsubmit()不起作用的问题
在项目中为一个表单(from)编写onsubmit()脚本的时候,经常需要验证表单中数据的合法性,所以常会写道:,试图在validateForm()中return false来阻止表单的提交。实际上的效果是即使return false 表单 还是会提交。后来发现 onsubmit="return validateForm()"就没有问题了,当时也没有多想就继续做其它事情了。
form表单的action和onsubmit事件说明
首先 action在form是属性,onsubmit是事件。" onSubmit="return check();"> function check(){ var oText = document.getElementById("in").value; alert(oText); if(oText =="false"){ return false; } else { re
form表单中onclick事件和onsubmit事件的执行顺序
说来很惭愧,今天因为form表单的一个小问题困扰了一下午。虽然最终得以解决,但花费的时间实在是令人汗颜,现在总结一下问题。 先说一下背景,之前帮一个朋友的项目写了一个原生js的表单验证,今天突然被找到说表单验证无效。虽然很震惊我写的代码有这种事(毕竟当时学js时间不长,而且距离当时近五个月了),但作为一个有始有终的人,还是要 义不容辞的调bug。得到的反馈是说表单里有两项判空验证是失效的,无论对
将表单内容发送到指定E-Mail电子邮箱
主要代码如下: <% dim jmail set jmail=server.createobject("Jmail.message") jmail.silent=true jmail.charset="gb2312" jmail.fromname=request("d_name") ’这里是发件人名称,可以从数据库或表单中取值 jmail.from="webmaster@siviy.com" ’这里是发件人邮箱,可以从数据库或表单中取值,但格式一定要正确 ,换成你的 Jmail.AddRecipient("wang@puyingtech.com")’这里是收件箱人的 email,换成你的 jmail.subject="团购网新订单" ’这是邮件标题,该值可以从数据库或表单中取值 。。。。。。
html form onsubmit表单提交的问题
FORM表单中onclick()、submit()与onsubmit()的问题 2012-03-01 Tech Notes 252 / 0 最近遇到一次处理form数据的过滤,采用了button的onclick事件来检查,发现return false后表单仍然提交了。 于是仔细研究了下onclick、onsubmit、submit集合函数之间的关系和区别 onsubmit You
HTML onsubmit 事件属性
HTML onsubmit 事件属性 HTML 事件属性 实例 当提交表单时执行一段 JavaScript: onsubmit="checkForm()"> 亲自试一试 浏览器支持 IE Firefox Chrome Safari Opera