📄 stu_upload_task.php
字号:
<?php
session_start();
include "ItAssisFC/FLib.php";
Stu_is_login();
?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>EasyTeacher信息技术课堂教学助手(ItAssis)学生端-提交作业</title>
<link href="et.css" rel="stylesheet" type="text/css">
<style type="text/css">
body,td,th {font-size: 14px;}
</style>
</head>
<body>
<?php
function Return_upload_task_msg($ok,$msg){
$bottom_msg="";
if($ok){
$jump_url="stu_mng_task.php?list=new";
$image="upload_success.gif";
$bottom_msg="
恭喜作业提交成功!<p>2秒后将自动回转到[<strong>我的作业</strong>]。</p>
<SCRIPT LANGUAGE=\"JavaScript\">
function Replace_page(){window.location.replace(\"$jump_url\");}
setTimeout('Replace_page();',2*1000);
</SCRIPT>";
}else{
$jump_url=$_SERVER['PHP_SELF'];
$image="upload_fail.jpg";
$bottom_msg="作业提交失败,请对照提示查找错误原因!<p>[<strong><a href=\"{$_SERVER['PHP_SELF']}\">返回上页</a></strong>]";
}
echo "
<div align=center><span class=red><h2>$msg</h2>
<h3><img src=images/$image><p>$bottom_msg</h3></span></div>";
exit;
}//end function Return_upload_task_msg
include "config.inc.php";
include "conn.inc.php";
$db=Connect_db($CFG_DB_ADDRESS,$CFG_DB_PORT,$CFG_DB_NAME,$CFG_DB_OWNER,$CFG_DB_PWD);
if(!isset($_POST['submit'])){
//显示提交作业页面
$rsc_array=Read_course_List2($db);
if(!$rsc_array){echo "目前没有设置课程,不能上传文件。";exit;}
?>
<div align="center"><img src="images/task_tijiaozuoye.jpg"> </div>
<form action="<?php echo $_SERVER['PHP_SELF'];?>" method="POST" enctype="multipart/form-data" name="form1">
<table width="740" border="1" align="center" cellspacing="0" bordercolor="#FFFFFF" bgcolor="#E9FCF0">
<tr>
<td width="98"><div align="right"><span class="red">第一步</span></div></td>
<td width="300"><input name="file" type="file" id="file" onSelect="this.disabled=true;" >
</td>
<td width="328">说明:选择你刚才保存的作业(一般在<span class="blue">我的文档</span>中)</td>
</tr>
<tr>
<td><div align="right"><span class="red">第二步</span></div></td>
<td><select name="crs_id" id="crs_id">
<?php
$sql ="select title from course where cid=".$_SESSION['cid'];
$result=mysql_query($sql,$db) or die("$sql<br>" . mysql_error());
$array=mysql_fetch_array($result);
//如果教师设置课程,则当日课程在最上方
if($_SESSION['cid']!="NULL")
echo "<option value=".$_SESSION['cid'].">〖".$array['title']."〗</option>";
else if($CFG_TASK_UPLOAD_LIMITED)
{echo "<option >对不起,老师没有设置课程,暂时不能提交作业</option>";exit;}
if(!$CFG_TASK_UPLOAD_LIMITED){
echo '<option value="null">****老师没有指定课程,请选择其他课程****</option>';
$g=$_SESSION['grade'];
while($array=array_shift($rsc_array))
if($array['type']==3 && $array['suit']==$g) //只显示所在年级课程
echo"<option value=".$array['cid'].">〖".$array['title']."〗</option>";
}
?>
</select>
</td>
<td>说明:选择作业要交到哪一课,一般不需要选择</td>
</tr>
</table>
<p align="center">
<input name="submit" type="submit" id="submit" value="交作业">
</p>
</form>
<?php
}else{
$msg="";$i=1;
if($_POST['crs_id']=="null")
{$msg.="错误 $i :你没有选择课程!<p>";$i++;}
if(!trim($_FILES['file']['name']))
{$msg.="错误 $i :你没有选择文件!<p>";$i++;}
if($_FILES['file']['size']<10)
{$msg.="错误 $i :好象不是文件吧!<p>";$i++;}
$ofname=$_FILES['file']['name'];
$file=pathinfo($ofname);
$ext=@strtolower($file['extension']);
if(!$ext)
{$msg.="错误 $i :不合法的文件!<p>";$i++;}
$forbiden_ext=preg_split("/\|/",$CFG_TASK_FORBIDEN_EXT);
if(in_array($ext,$forbiden_ext)) $ext.=".et";//所有禁止文件类型追加.et
$time=date("ymdhs");
$rand=mt_rand(10000,99999);
$nfname="$time$rand.$ext";
$size=$_FILES['file']['size'];
if($size>$CFG_TASK_MAXSIZE*1024)
{$msg.="错误 $i :文件超过限定大小($CFG_TASK_MAXSIZE K)<p>";$i++;}
if($msg!="")
Return_upload_task_msg(false,$msg);
$source_fname=$_FILES['file']['tmp_name'];
$upload_dir="$CFG_TASK_DIR/".$_POST['crs_id'];
$stu_id=$_SESSION['sid'];
$crs_id=$_POST['crs_id'];
//检查作业是否有重复提交
$sql ="select count(*) as num from s_c_t where crs_id=$crs_id and stu_id=\"$stu_id\"";
$result=mysql_query($sql,$db) or die("$sql<br>" . mysql_error());
$array=mysql_fetch_array($result);
if($array['num']>=$CFG_TASK_UPLOAD_MAX_NUM){
$msg.="错误 $i :课程作业重复提交!此课程下已有“{$array['num']}”个作业,<p>请返回[<strong><a href=\"stu_mng_task.php\">我的作业</a></strong>]<span class=blue>删除</span>以往作业后再重新提交。";
Return_upload_task_msg(false,"$msg");
}
if( Upload_file($source_fname,$upload_dir,$nfname) ){
//将提交文件基本信息插入task表(大小、类型。序号和时间为自动)
$sql ="INSERT INTO task(ofname,nfname,size)";
$sql.=" VALUES(\"$ofname\",\"$nfname\",$size)";
mysql_query($sql,$db) or die("$sql<br>" . mysql_error());
//插入s_c_t关联表(学生号、作业号、课程号)
$tsk_id=mysql_insert_id();
$sql ="INSERT INTO s_c_t(stu_id,tsk_id,crs_id)";
$sql.=" VALUES(\"$stu_id\",$tsk_id,$crs_id)";
mysql_query($sql,$db) or die("$sql<br>" . mysql_error());
//更新在线课堂表中作业记录
$online_class=$_SESSION['grade']."_".$_SESSION['class'];
$result=mysql_list_tables($CFG_DB_NAME);
$i=0;
while($row = mysql_fetch_row($result))
$tables[$i++]=$row[0];
if( in_array($online_class,$tables)){
$sql="update $online_class set upload='Y' where sid=\"$stu_id\"";
mysql_query($sql,$db) or die("<b>$sql</b><br>" . mysql_error());
}
Return_upload_task_msg(true,"");
}else
Return_upload_task_msg(false,"<h1><span class=red>未知原因导致交作业失败!");
}
?>
<table width="740" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td width="576" bgcolor="#F7F3F7"><p><span class="red"> 注意:</span></p>
<ol>
<li class="explain_hight">请不要重复提交作业。</li>
<li class="explain_hight">重复的、不好的作业请在[<strong class="red">我的作业</strong>]删除。</li>
<li class="explain_hight">作业一定要<span class="red"><strong>交到对应课程</strong></span>。</li>
</ol></td>
</tr>
</table>
</body>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -