ppt를 업로드 할 수 있도록 각 슬라이드마다 PDF로 분할됩니다. 나는 이미 ppt 분할을 수행하기 위해 쉘 스크립트를 만들었지 만 작동하지만 내 SQL 쿼리로 내 데이터베이스를 업데이트하는 데 문제가 있습니다. 나는 그것을 한순간에 작동 시켰고 갑자기 작동을 멈추었는데, 내가 무엇을 망쳐 놓았는지 확실하지 않았지만 나에게 잘 보였다. 여기에 코드의 일부는 다음과 같습니다mysql 쿼리가 더 이상 작동하지 않습니다.
if(isset($_POST['title'])){
$admin_id = $_SESSION['user_id'];
$name = $_POST['title'];
if(isset($_FILES["file"]["name"]) && !empty($_FILES["file"]["name"])){
$fname = $_FILES["file"]["name"];
$tmp_name = $_FILES["file"]["tmp_name"];
$dir = "powerpoints/".$name;
$ispdf = "1";
echo $tmp_name."----------------".$dir;
echo $admin_id.':'.$name.':'.$dir.':'.$ispdf;
$query = mysql_query("INSERT INTO problem (admin_id,topic,image,is_pdf) VALUES ('$admin_id','$name','$dir','$ispdf')");
//$output = shell_exec('mkdir '.$dir);
//echo $output;
if($query && move_uploaded_file($tmp_name, $dir.$fname)){
//$cmd = 'importppt.sh '.str_replace(".pdf", "", $name);
$message = "Powerpoint uploaded";
}elseif($query){
$message = "move_uploaded_file() Failed";
}else{
$message = "Database Error";
}`
내가 스크립트 데이터베이스 오류가 "ELSEIF ($ 쿼리)" 도 내 데이터베이스에 더 많은 열이 있다는 것을 유의 뛰어 넘었 의미 인쇄되어 사용하려고하는 내가 업데이트하지 않습니다. 그러나 작동을 멈추기 전에 새로운 항목에 대해 비워 두어야합니다. 모든 이름은 정확하게 입력 데이터 내 echo 문
테스트에 대한 쿼리)'제대로 인쇄 된 쿼리에 투입되고 - 그 말씀 드리죠 너 무슨 일이야. 사이드 노트 : 새로운 코드에는'mysql _ *()'을 사용하지 말라 : 그것은 더 이상 사용되지 않는다. 대신에'mysqli _ *()'또는'PDO'를 사용하십시오. –
내가 처음으로 잘못 본 것은 입력 내용을 살균하지 않는다는 것입니다. 따라서'$ name'에'''가 있으면 쿼리가 중단됩니다. mysql_query ("INSERT ...") 또는 die (mysql_error());를 사용하면 정확히 무슨 일이 일어나는지 알 수있다. – CodeBird
네, 언젠가 mysqli를 변경해야합니다. 아직 havent 할 기회가있었습니다. 메아리 mysql_error() 팁 주셔서 고마워, 다시 열쇠 '문제'에 대한 중복 항목으로 제공됩니다. 메신저 그것은 열 문제가 테이블 문제의 이름이 아니라는 것을 전제로하지만, 유일한 키는 id 열이고 자동은 –