buzz 65 ارسال شده در تیر 93 گزارش بازنشر ارسال شده در تیر 93 (ویرایش شده) یه تعداد داده رو بصورت عدد ، تصویر، متن رو بوسیله foreach استخراج کردم اما حالا نمی دونم چطوری تو دیتابیس ذخیره بشه؟<?php$articles = array();// Find all article blocksforeach($html->find('div#content') as $article) {$item['title'] = $article->find('h1', 0)->plaintext;$item['intro'] = $article->find('h3', 0)->plaintext;$item['details'] = $article->find('span.finalprice', 0)->plaintext;$articles[] = $item;}echo$title="<b>نام محصول:</b>". $item['title'] . "</br> ";echo$dec="<b>توضیحات:</b> ". $item['intro'] . "</br> ";echo$pr="<b>قیمت:</b> ". $item['details'] . " </br> ";//to fetch all images from a webpage$images = array();foreach($html->find('img') as $img) {$images[] = $img->src;}echo " $images[29]";?> ویرایش شده تیر 93 توسط buzz نقل قول لینک به ارسال
Mobin 1669 ارسال شده در تیر 93 گزارش بازنشر ارسال شده در تیر 93 البته بهتره عکسهای هر محصول رو هم به صورت یک ایتم تو ارایه articles قرار بدیدخب یه جدول تو دیتابیس میسازین با 3 تا فیلد مثلاproductdescribemoneyimgsبعد با استفاده از یک حلقه این اطلاعات رو وارد دیتابیس کنیدforeach($articles as $art){$query = "insert into table_name(product,describe,money,imgs)values('$art[0]','$art[1]','$art[2]','".implode(',',$art[3])."')";$wpdb->query($query);}خب اگه از کد درون وردپرس استفاده نمیکنید میتونین به جای $wpdb->query($query); کد mysqli یا PDO خودتونو بزارین 3 نقل قول لینک به ارسال
پویابهروش 237 ارسال شده در تیر 93 گزارش بازنشر ارسال شده در تیر 93 با استفاده از دستور Insert یا update در mysql این کار انجام میشه. اما اگر در وردپرس ، برای چیزی شبیه پنل تنظیمات می خواید این کار رو انجام بدید ، این مطلب رو بخونید:http://forum.wp-parsi.com/tutorials/article/145-%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF-%D9%BE%D9%86%D9%84-%D8%AA%D9%86%D8%B8%DB%8C%D9%85%D8%A7%D8%AA-%D8%AF%D8%B1-%D9%85%D8%AF%DB%8C%D8%B1%DB%8C%D8%AA/قسمتی که Update_Option رو توضیح داده 2 نقل قول لینک به ارسال
buzz 65 ارسال شده در تیر 93 مالک گزارش بازنشر ارسال شده در تیر 93 ممنون از دوستانالان من یه دیتابیس وصل شدم و دستوری نوشتم که دیتابیس ایجاد بشه و بعدا داده ها از آرایه ها برزه تو جدول اما به دو مشکل برخوردم. یک وقتی اجرا می کنم می نویسته table person not exit's و برای تنظیم فیلد عکس در دیتابیس غیر از اینکه نوعش blob باشه بقیه تنظیماتش چطور باید باشه.لطفا این کد رو نگاه کنید و مشکلاتش رو بفرمایید و اگه ممکنه تصحیح شدش رو بذارید با تشکر$con = mysql_connect ("localhost","root", ""); mysql_select_db("price", $con); if (!$con) { die(mysql_error()); }else {// Find all article blocksforeach($html->find('div#content') as $article) { $item['title'] = $article->find('h1', 0)->plaintext; $item['intro'] = $article->find('h3', 0)->plaintext; $item['details'] = $article->find('span.finalprice', 0)->plaintext; $articles[] = $item;}$articles = array("$item"=>"title","$item"=>"intro","$item"=>"details");mysql_select_db ( "price", $con );$sql="CREATE TABLE Persons(title CHAR(30),intro TNT,details CHAR 30)";$debugquery = mysql_query("INSERT INTO Persons (title, intro, details) VALUES ('$articles')"); if (!$debugquery) { die(mysql_error()); }}echo$title="<b>نام محصول:</b>". $item['title'] . "</br> ";echo$dec="<b>توضیحات:</b> ". $item['intro'] . "</br> ";echo$pr="<b>قیمت:</b> ". $item['details'] . " </br> ";//to fetch all images from a webpage$images = array();foreach($html->find('img') as $img) {$images[] = $img->src;}echo " $images[29]"; نقل قول لینک به ارسال
پویابهروش 237 ارسال شده در تیر 93 گزارش بازنشر ارسال شده در تیر 93 یه چندتا نکته:اول اینکه برای ساخت جدول شما دستور مای اس کیو ال رو توی متغیر ریختید که این اشتباهه!دوم اینکه برای ساخت جدول در MySql معمولا به یه ستون دیگه با ویژگی INT NOT_NULL که PRIMARY KEY شده لازم هست.سوم اینکه در اولین آزمایش کد معلوم نیتس که درست کار می کنه یا نه! به همین دلیل از or die هم باید استفاده کنید:$con = mysql_connect ("localhost","root", ""); mysql_select_db("price", $con); if (!$con) { die(mysql_error()); }else {// Find all article blocksforeach($html->find('div#content') as $article) { $item['title'] = $article->find('h1', 0)->plaintext; $item['intro'] = $article->find('h3', 0)->plaintext; $item['details'] = $article->find('span.finalprice', 0)->plaintext; $articles[] = $item;}$articles = array("$item"=>"title","$item"=>"intro","$item"=>"details");mysql_select_db ( "price", $con );mysql_qeury("CREATE TABLE Persons(id INT NOT NULL AUTO INCREMENT,PRIMARY KEY(id),title CHAR(30),intro TNT,details CHAR 30) ENGINE=MyISAM") or die(mysql_error());$debugquery = mysql_query("INSERT INTO Persons (title, intro, details) VALUES ('$articles')"); if (!$debugquery) { die(mysql_error()); }}echo$title="<b>نام محصول:</b>". $item['title'] . "</br> ";echo$dec="<b>توضیحات:</b> ". $item['intro'] . "</br> ";echo$pr="<b>قیمت:</b> ". $item['details'] . " </br> ";//to fetch all images from a webpage$images = array();foreach($html->find('img') as $img) {$images[] = $img->src;}echo " $images[29]"; 1 نقل قول لینک به ارسال
buzz 65 ارسال شده در تیر 93 مالک گزارش بازنشر ارسال شده در تیر 93 (ویرایش شده) الان یه خطایی داد خط 23mysql_qeury("CREATE TABLE Persons(id INT NOT NULL AUTO INCREMENT,PRIMARY KEY(id),title CHAR(30),intro TNT,details CHAR 30) ENGINE=MyISAM") or die(mysql_error()); Fatal error: Call to undefined function mysql_qeury() in C:\wamp\www\New folder\simplehtmldom_1_5\test.php on line 23 ویرایش شده تیر 93 توسط buzz نقل قول لینک به ارسال
Mobin 1669 ارسال شده در تیر 93 گزارش بازنشر ارسال شده در تیر 93 توابع mysql قدیمی شده و deprecate شده هست از کلاس mysqli یا pdo استفاده کنید خیلی مناسبترهکوئریتونم به این صورت بنویسید"CREATE TABLE Persons(id INT NOT NULL AUTO INCREMENT,title VARCHAR(30),intro INT NOT NULL,details VARCHAR(30) NOT NULL,PRIMARY KEY(id)) ENGINE=MyISAM"دیتابیس غیر از اینکه نوعش blob باشه بقیه تنظیماتش چطور باید باشهنوع blob وقتی هست که شما بخواهید خود عکس رو ذخیره کنید که این کار مناسب نیست و باعث سنگین شدن بانک میشه شما باید عکسها رو در یک پوشه ذخیره کنید و نام اونها رو در یک فیلد مثلا با نام imgs از نوع TEXT یا VARCHAR(2048) قرار بدید 2 نقل قول لینک به ارسال
buzz 65 ارسال شده در مرداد 93 مالک گزارش بازنشر ارسال شده در مرداد 93 (ویرایش شده) دوباره دچار بد خطایی شدم.وقتی اجرا می کنم این خطا می ده.Table'price.person' dosn't exist ویرایش شده مرداد 93 توسط buzz نقل قول لینک به ارسال
buzz 65 ارسال شده در مرداد 93 مالک گزارش بازنشر ارسال شده در مرداد 93 مشکل حل شد. نقل قول لینک به ارسال
پست های پیشنهاد شده
به گفتگو بپیوندید
هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .