2013-11-03 3 views
-2

Пожалуйста, посмотрите на мой PHP код:написать MySQL запрос в плохом

PHP:

$username = 'kia'; 
$pswd = 'kiakia'; 
$db = 'jahaad'; 

$kaan = new PDO('mysql:host=localhost; dbname = jahaad', $username, $pswd); 

if ($kaan) { echo 'Connected<br />'; } 

else { echo 'Not Connected'; } 

$address = "../letters/Assistance01/office01/letter001.txt"; 

$open = fopen($address, 'r'); 

$size = filesize($address); 

$file = fread($open, ($size*4)); 

fclose($open); 

$filename = basename($address); 

echo '<hr />' . $filename; 

$type = strstr($filename, '.'); 

echo '<br /> ' . $type; 

$recieveTime = date('Y/m/d H:m:s'); 

echo '<br />' . $recieveTime; 

$from = 'test'; 

$sql = 'INSERT (`filename`, `filetype`, `recieve`, `from`, `file`) INTO `jahaad`.`assis01_office01` VALUES(:filename, :filetype, :recieve, :from, :file)'; 

$result = $kaan->prepare($sql); 

$result->execute(array(':filename'=>$filename, ':filetype'=>$type, ':recieve'=>$recieveTime, ':from'=>$from, ':file'=>$file)); 
if ($result) { 
    echo '<br />OK'; 
} 
else { 
    echo '<br />Problem'; 
} 

кроме столбца файла, каждый тип столбца VARCHAR в моей базе данных. , когда я запускаю код, $result правдиво !!! но ничего не добавлено в мою базу данных ... Не могли бы вы сказать мне, что не так ???
Edit:
Это из-за мои неосторожный в написании запроса ...
надеются, вы не сделаете этого ...

+0

Я считаю, что синтаксис для вставки в базу данных MySQL является 'INSERT INTO VALUES таблицы (column1, COLUMN2) ('col1val', 'col2val') ' – TheNytangel

+0

См. Http://stackoverflow.com/a/18120759/2864740 (и http://php.net/manual/en/pdo.error-handling.php) - затем следуйте советам, чтобы узнать, что такое ошибка (s). (Я мог бы сказать вам хотя бы одну вещь, которая не соответствует действительности, но это более важно *, что другие ошибки в будущем могут быть обнаружены/сообщены.) – user2864740

+1

_Пожалуйста, не голосуйте меня. Рассвет, если вы считаете, что этот вопрос не полезен_ - если вопрос не полезен, это не полезно, независимо от того, являетесь ли вы любителем. Точно так же любители также могут задавать полезные вопросы. –

ответ

1

Это не проблема с PHP кодой, но проблема с вашим запросом MySQL.

Эта линия

$sql = 'INSERT (`filename`, `filetype`, `recieve`, `from`, `file`) INTO `jahaad`.`assis01_office01` VALUES(:filename, :filetype, :recieve, :from, :file)'; 

Должно быть

$sql = 'INSERT INTO `jahaad`.`assis01_office01` (`filename`, `filetype`, `recieve`, `from`, `file`) VALUES(:filename, :filetype, :recieve, :from, :file)'; 
Смежные вопросы