PHP上传和检查
编辑: 很抱歉给您带来不便,当我回顾代码时,它实际上并没有上载文件,它只是捕获文件的信息并存储在数据库中,稍后用户无法下载,因为任何地方都不存在这样的文件。。。我的问题是,如何将这些代码与move_上传的文件功能集成 我想使用上载框更新/插入文件到数据库,但在此之前,它将检查只有pdf才能上载的文件类型。代码有点问题,我不知道是什么..请帮忙 以下是我的部分更新代码:PHP上传和检查,php,javascript,Php,Javascript,编辑: 很抱歉给您带来不便,当我回顾代码时,它实际上并没有上载文件,它只是捕获文件的信息并存储在数据库中,稍后用户无法下载,因为任何地方都不存在这样的文件。。。我的问题是,如何将这些代码与move_上传的文件功能集成 我想使用上载框更新/插入文件到数据库,但在此之前,它将检查只有pdf才能上载的文件类型。代码有点问题,我不知道是什么..请帮忙 以下是我的部分更新代码: $id=$rs['id']; $qry = "SELECT a.faillampiran FROM {$CFG->pre
$id=$rs['id'];
$qry = "SELECT a.faillampiran FROM {$CFG->prefix}ptk_lampiran a, {$CFG->prefix}ptk b WHERE a.ptkid=$id and b.id=$id";
$sql = get_records_sql($qry);
if($_POST['check']){
$ext = pathinfo($faillampiran,PATHINFO_EXTENSION);
$err = "Upload Only PDF File. ";
if ($ext =='pdf'){
$qry="UPDATE {$CFG->prefix}ptk_lampiran SET
faillampiran='".$faillampiran."'
WHERE ptkid='".$_GET['id']."'";
$sql=mysql_query($qry);
$qry = "SELECT a.faillampiran FROM {$CFG->prefix}ptk_lampiran a, {$CFG->prefix}ptk b
WHERE b.id = '".$rs[id]."' AND a.ptkid = '".$rs[id]."' ";
$sql = get_records_sql($qry);
foreach($sql as $rs){ ?>
<?=basename($rs->faillampiran); ?><br>
<? }
?>
<tr><td></td><td></td><td>
<input type="file" size="50" name="faillampiran" alt="faillampiran" value= "<?=$faillampiran;?>" />
<input type="submit" name="edit" value="Muat naik fail ini" /><br />
</td></tr>
}
else {
echo "<script>alert('$err')</script>";
}
} else {
foreach($sql as $rs){ ?>
<?=basename($rs->faillampiran); ?><br>
<? }
?>
<input type="file" size="50" name="faillampiran" alt="faillampiran" value= "<?=$faillampiran;?>" />
<input type="submit" name="edit" value="Muat naik fail ini" /><br />
<?}
关于代码的混乱,我还是这门语言的初学者
thx您没有提供您认为它失败的原因的详细信息 然而,使用我的水晶球,我看到您正在检查文件扩展名是否为“.pdf”。我猜您正在查看$\u文件['userfile']['tmp\u name']或$\u文件['userfile']['name']。后者仅在客户机上的扩展为小写时匹配。前者永远不会匹配 它将检查仅为pdf的文件类型 你的代码根本不是这样做的。文件扩展名仅在某些体系结构上按约定与内容匹配
C.发生了什么?什么不起作用?请添加更多信息。发生了什么或没有发生什么?在这种情况下有什么问题吗?你收到错误信息了吗?如果是的话,你能发布一下吗?其他文件可以上传吗?请提供更多信息…您的编码是正确的,请告诉我您的问题$\u文件['userfile']['tmp\u name']或$\u文件['userfile']['name']之间有什么不同。和pathinfo$faillampiran,pathinfo_BASENAME;我在代码中使用了哪个?1上传后由PHP分配用于临时存储的文件名-不会有mime相关的ext,2上传前客户端系统上的文件名-ext是用户选择的,3我不知道-它是由您的代码/数据生成的