私は現在、独自のCMSシステムからJoomla 1.6データベースにデータベースを移行するためのスクリプトを作成しようとしています。
私のコードは最後の "die"でエラーを投げています。 (私は道に沿って自分自身にPHPを教えてきました申し訳ありませんが、私はすべてのための適切な用語を使用しないでください知っている)独自のCMSデータベースをJoomlaデータベースに移行する
<?php
$username="root";
$password="";
$database="DATABASE";
mysql_connect(localhost,$username,$password);
@mysql_select_db($database) or die("Unable to select database");
$query="SELECT * FROM post3";
$result=mysql_query($query);
$num=mysql_num_rows($result);
mysql_close();
$i=0;
while ($i < $num) {
$postid=mysql_result($result,$i,"postid");
echo "$postid <br/>";
$poster=mysql_result($result,$i,"poster");
echo "$poster <br/>";
$department=mysql_result($result,$i,"department");
if($department=="LIFE"){
$department="12";}
elseif ($department=="NEWS"){
$department="11";}
elseif ($department=="SPORTS"){
$department="13";}
echo "$department <br/>";
$milestone=mysql_result($result,$i,"milestone");
echo "$milestone <br/>";
$date= date('Y-m-d H:i:s', $milestone);
echo "$date <br/>";
$title=mysql_result($result,$i,"title");
echo "$title <br/>";
$preview=mysql_result($result,$i,"preview");
if (empty($preview)) {
$preview=$title;
}
echo "$preview<br/>";
$alias=str_replace(" ","-", $title);
echo "$alias <br/>";
$bodytext=mysql_result($result,$i,"body_text");
echo "$bodytext <br/>";
$edited=mysql_result($result,$i,"edited");
echo "$edited <br/>";
$pop=mysql_result($result,$i,"pop");
echo "$pop <br/>";
echo "$i Records Copied<br/>";
$con = mysql_connect("localhost","root","");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("DATABASE", $con);
$sql="INSERT INTO conversion (id, title, alias, introtext, fulltext, state, sectionid, mask, catid, created, created_by, modified, modified_by, checked_out, checked_out_time, publish_up, publish_down, version, parentid, ordering, access, hits, featured, language)
VALUES
('$postid','$title','$alias','$preview','$bodytext','1','0','0','$department','$date','$poster','$date','$poster','0','0000-00-00 00:00:00','0000-00-00 00:00:00','0000-00-00 00:00:00','$edited','0','$i','1','$pop','0','*')";
if (!mysql_query($sql,$con))
{
die ("Query failed: " . mysql_error() . " Actual query: " . $sql);
}
echo "Success <br/>";
mysql_close($con);
$i++;
}
?>
それは素晴らしいすべてをエコー表示が、このエラーがスローされます。 クエリに失敗しました:あなたをあなたのSQL構文に誤りがあります。あなたのMySQLサーバのバージョンに対応するマニュアルをチェックして、正しい文法が 'fulltext、state、sectionid、mask、catid、created、created_by、modified、modified'の近くで使用されていることを確認してください。
アイデア?ありがとうございました!
あなたは私のヒーローです。 addslashesとmysql_real_escape_stringが必要な場所を覚えていれば、完全に動作します。 – Dennis
私はあなたに投票しようとしましたが、これは私の初めての投稿、申し訳ありません。 – Dennis