2017-01-03 21 views
0
<!doctype html> 
<?php 
mysql_connect("127.0.0.1","[email protected]",""); 
mysql_select_db("reco"); 

if(isset($_POST['submit'])) { 
    $soundcard_title = $_FILES['file']['name']; 
    $upload_tmp = $_FILES['file']['tmp_name']; 
    $upload_type = $_FILES['file']['type']; 

    $upload_name = preg_replace("#^a-z0-9.#i","", $soundcard_title); 

    if(!$soundcard_title) { 
     echo "No file selected"; 
    } else{ 
     move_uploaded_file($upload_tmp, "soundcards/".$soundcard_title); 
     echo "<br />".$soundcard_title." has been uploaded"; 
    } 

    $path= "http://127.0.0.1/upload-playback/soundcards/$soundcard_title"; 
    $query = "INSERT INTO 'soundcards' VALUE('','','$soundcard_title','$path','','','')"; 
    $query1 = mysql_query($query); 
} 
?> 
<html> 
    <head> 
     <meta charset="utf-8"> 
     <title>Upload screen</title> 
    </head> 
    <body> 
     <form enctype="multipart/form-data" action="upload_screen.php" method="post"> 
      Browse:<br> 
      <input name="file" type="file" size="80"> <br> 
      <input type="submit" name="submit" id="upload_btn" value="Upload"> 
     </form> 
    </body> 
</html> 

我想在php中使用mysql數據庫創建一個簡單的上傳播放。爲此,我使用xampp創建了Apache服務器。 現在我能夠上傳文件到指定的文件夾,但mysql數據庫不會更新與上傳文件關聯的條目。以此爲藉口我以後無法播放文件。文件上傳,但價值觀不反映在數據庫

我的數據庫模式:

-- phpMyAdmin SQL Dump 
-- version 4.5.1 
-- http://www.phpmyadmin.net 
-- 
-- Host: 127.0.0.1 
-- Generation Time: Jan 03, 2017 at 08:49 AM 
-- Server version: 10.1.13-MariaDB 
-- PHP Version: 5.6.23 

SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; 
SET time_zone = "+00:00"; 


/*!40101 SET @[email protected]@CHARACTER_SET_CLIENT */; 
/*!40101 SET @[email protected]@CHARACTER_SET_RESULTS */; 
/*!40101 SET @[email protected]@COLLATION_CONNECTION */; 
/*!40101 SET NAMES utf8mb4 */; 

-- 
-- Database: `reco` 
-- 

-- -------------------------------------------------------- 

-- 
-- Table structure for table `soundcards` 
-- 

CREATE TABLE `soundcards` (
    `s_id` int(10) NOT NULL, 
    `u_id` int(11) NOT NULL, 
    `soundcard_title` varchar(20) NOT NULL, 
    `path` varchar(100) NOT NULL, 
    `date-time` varchar(20) NOT NULL, 
    `no_plays` int(11) NOT NULL, 
    `no_reco` int(11) NOT NULL 
) ENGINE=InnoDB DEFAULT CHARSET=latin1; 

-- -------------------------------------------------------- 

-- 
-- Table structure for table `user` 
-- 

CREATE TABLE `user` (
    `u_id` int(11) NOT NULL, 
    `name` varchar(50) NOT NULL, 
    `username` varchar(20) NOT NULL, 
    `email` varchar(50) NOT NULL, 
    `password` varchar(50) NOT NULL 
) ENGINE=InnoDB DEFAULT CHARSET=latin1; 

-- 
-- Indexes for dumped tables 
-- 

-- 
-- Indexes for table `soundcards` 
-- 
ALTER TABLE `soundcards` 
    ADD PRIMARY KEY (`s_id`); 

-- 
-- Indexes for table `user` 
-- 
ALTER TABLE `user` 
    ADD PRIMARY KEY (`u_id`), 
    ADD UNIQUE KEY `username` (`username`), 
    ADD UNIQUE KEY `email` (`email`); 

-- 
-- AUTO_INCREMENT for dumped tables 
-- 

-- 
-- AUTO_INCREMENT for table `soundcards` 
-- 
ALTER TABLE `soundcards` 
    MODIFY `s_id` int(10) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=2; 
-- 
-- AUTO_INCREMENT for table `user` 
-- 
ALTER TABLE `user` 
    MODIFY `u_id` int(11) NOT NULL AUTO_INCREMENT; 
/*!40101 SET [email protected]_CHARACTER_SET_CLIENT */; 
/*!40101 SET [email protected]_CHARACTER_SET_RESULTS */; 
/*!40101 SET [email protected]_COLLATION_CONNECTION */; 

回答

0

我覺得你的SQL被寫在錯誤的格式插入格式應該像

INSERT INTO TABLE_NAME (column1,column2,column3,...columnN) 
VALUES (value1,value2,value3,...valueN); 
0
<!doctype html> 
<?php 
    mysql_connect("127.0.0.1","[email protected]",""); 
    mysql_select_db("reco"); 

    if(isset($_POST['submit'])){ 
     $soundcard_title = $_FILES['file']['name']; 
     $upload_tmp = $_FILES['file']['tmp_name']; 
     $upload_type = $_FILES['file']['type']; 

     $upload_name = preg_replace("#^a-z0-9.#i","", $soundcard_title); 

     if(!$soundcard_title){ 
      echo "No file selected"; 
     } 
     else{ 
      move_uploaded_file($upload_tmp, "soundcards/".$soundcard_title); 
       echo "<br />".$soundcard_title." has been uploaded"; 
     } 

     $path= "http://127.0.0.1/upload-playback/soundcards/$soundcard_title"; 
     $query = "INSERT INTO 'soundcards' VALUES('','$soundcard_title','$path','','','')"; 
     $query1 = mysql_query($query); 
    } 
?> 
<html> 
<head> 
<meta charset="utf-8"> 
<title>Upload screen</title> 
</head> 

<body> 
<form enctype="multipart/form-data" action="upload_screen.php" method="post"> 
    Browse:<br> 
    <input name="file" type="file" size="80"> <br> 
    <input type="submit" name="submit" id="upload_btn" value="Upload"> 
</form> 

</body> 
</html> 
0

錯誤是在你這裏插入查詢:

$path= "http://127.0.0.1/upload-playback/soundcards/$soundcard_title"; 
$query = "INSERT INTO 'soundcards' VALUE('','','$soundcard_title','$path','','','')"; 
$query1 = mysql_query($query); 

解決方案:

$query = "INSERT INTO 'soundcards' **VALUES**('','','$soundcard_title','$path','','','')"; 
$query1 = mysql_query($query) or die('Error is='.mysql_error()); 

您已經使用值,而不是值。

相關問題