2012-04-28 35 views
0

我的PHP脚本如下:move_uploaded_file()以脚本没有完成

<?php 

require_once('connectvars.php'); 

$file = $_FILES['image']['name']; 
$target = GW_UPLOADPATH . $file; 

if (move_uploaded_file($_FILES['image']['tmp_name'], $target)) { 
    $dbc = mysqli_connect(DB_HOST, DB_UN, DB_PW, DB_NAME) or die('Error connecting to the MySQL server'); 

    $title = mysqli_real_escape_string($dbc, trim($_POST['title'])); 
    $description = mysqli_real_escape_string($dbc, trim($_POST['content'])); 
    $host = mysqli_real_escape_string($dbc, trim($_POST['host'])); 
    $duration = mysqli_real_escape_string($dbc, trim($_POST['duration'])); 
    $sn1 = mysqli_real_escape_string($dbc, trim($_POST['link1'])); 
    $sn2 = mysqli_real_escape_string($dbc, trim($_POST['link2'])); 
    $sn3 = mysqli_real_escape_string($dbc, trim($_POST['link3'])); 
    $sn4 = mysqli_real_escape_string($dbc, trim($_POST['link4'])); 
    $sn5 = mysqli_real_escape_string($dbc, trim($_POST['link5'])); 

    $query = "INSERT INTO dyhamb (title, description, host, duration, file, sn1, sn2, sn3, sn4, sn5) VALUES ('$title', '$description', '$host', '$duration', '$file', '$sn1', '$sn2', '$sn3', '$sn4', '$sn5')"; 
    $result = mysqli_query($dbc, $query); 

    if (!$result) { 
     echo 'failed'; 
    } else { 
     echo 'success'; 
    } 

    mysqli_close($dbc); 
} 
?> 

当我跑我收到“失败”的脚本返回,我不明白为什么。 $dbc$query似乎都很好,因此不确定为什么$result未定义。

回答

3
if ($result === FALSE) { 
    echo mysqli_error($dbc); 
} else { 
    echo mysqli_affected_rows($dbc); 
} 

另外

$的MySQL -u根-pmyPassWord DB_NAME

>从dynamb选择标题;

确认某物正在进入数据库。

+0

你的片段指向我一个重复的数据库条目,我忽略了。谢谢。 – Ryan 2012-04-28 14:46:52

+0

很高兴能帮到你! – 2012-04-28 20:26:22

2

尝试查询后添加or die(mysqli_error());

$result = mysqli_query($dbc, $query) or die(mysqli_error()); 

这可能给你一个线索什么错与查询。

+0

哈哈,你打我吧:) – 2012-04-28 14:39:24