اشکال این کد کجاس؟

[right]سلام . من تعدادی تکست گذاشتم که اطلاعات را بگیره . بعد از گرفتن اطلاعات را در متغیری ذخیره کرده و در بانک ذخیره کنه . این کد ها هنگام چاپ در صفحه هیچ مشکلی ندارن . یعنی اطلاعات را گرفته و در صفحه چاپ میکنه متغیر را اما موقع ذخیره در بانک اطلاعاتی ارور میده [/right].

echo "<h2>Your Input:</h2>";

$link = mysql_connect("localhost" , "root" , "");

if(! $link ) {

die(“couldnt’t connect to mysql”);

}

$database = "ole";

$sql = ‘INSERT INTO tbads VALUES (\’’.Yii::app()->user->name.’\’,\’’.$email.’\’,\’’.$website.’\’,\’’.$comment.’\’,\’’.$gender.’\’)’;

                    &#036;command = Yii::app()-&gt;db-&gt;createCommand(&#036;sql);


                    &#036;command-&gt;execute();

?>[right]

قابل ذکر است در فایلی به نام input.php

نوشتمش در پوشه ی product/viwe/site[/right]

[right][font="Tahoma"]

:blink:

mysq_connect()

برای چی هست ؟!

اون چه وضعه اینسرت هست ؟

[/font][/right]

[right]

توی فایل [/right]

protected/config/main.php

[right]باید بری و تنظیمات دیتابیس رو اونجا ست کنی. بعد مدلاتو ایجاد کنی و هرجا توی برنامه ات خواستی با دیتابیس ارتباط برقرار کنی فقط با مدلت کار کنی .دیگه نیازی به کدهایی که بالا نوشتی نیست!![/right]

[right]خب این کد را از اینترنت گرفتم . بعدش متغیر هایی که داشتم توی صفحه ی اینسرت پی اچ پی را توش جا گذاری کردم .

ببین همین متغیر ها تو چاپ میان [/right]


<?php

 echo "<h2>Your Input:</h2>";

echo $name;

echo "<br>";

echo $email;

echo "<br>";

echo $website;

echo "<br>";

echo $comment;

echo "<br>";

echo $gender;

?>

[right]

توی این قشنگ نشون میدن . اما وقتی بهشون میگم برید تو بانک اصلا بانک نمیرن هیچ بلکه بعد از لاگ این شدن که قراره صفحه اینسرت پی اپ پی فراخوانی بشه همونجا ارور میدن[/right]

[right]

ببین دوست عزیز . من توی همین پروژه اطلاعات را در بانک ذخیره کردم . مشکلی در کار با بانک اطلاعاتی نداره .

مثال میزنم . من الان تو سایت لاگ میگیرم . یعتی اطلاعات لاگ این کاربران را ذخیره میکنم . با این دستور[/right]


<?php 

$link = mysql_connect("localhost" , "root" , "");

if(! $link ) {

die("couldnt't connect to mysql");

}

$database = "ole";

 $sql = 'INSERT INTO tbl_logs VALUES (\''.Yii::app()->user->name.'\',\''.$_SERVER['REMOTE_ADDR'].'\',\''.date("Y-m-d H:i:s").'\',\''.$this->getId().'\',\''.$this->getAction()->getId().'\',\''.$this->logMessage.'\')';

                        $command = Yii::app()->db->createCommand($sql);

                        $command->execute();

 ?>

[right]

اما این نمیدونم چی میگه . البته نا گفته نماند من تازه دارم یاد میگیرم پی اچ بی را و برای همین نمیفهمم ارور ها چی میگن .

بعنوان مثال [/right]

yii::app()->user->name

این نام کاربر آنلاین یا لاگ شده را میده

$h=yii::app()->user->name

[right]این نام کاربر لاگ این شده را در متغیر ذخیره میکنه . همین متغیر را میشه چاپ گرفت [/right]

echo $h

[right]اما به اسم همون یه جدول میخوام بسازم نمیشه . [/right]

در ساختاری که مبتنی بر یک فریم ورک است شما اجازه این چنین کاری را ندارید.

پیشنهاد می کنم اول به مباحث اولیه مانند ساختار mvc مسلط شوید سپس اقدام به کدنویسی نمایید.