PDA

View Full Version : اتصال و به دیتابیس و بازیابی اطلاعات با اصول مخفی سازی چه طوری ! کی بلده !



mehrdad.t
شنبه 27 آذر 1389, 22:35 عصر
دوستان سلام:قلب:

بدون مقدمه بگم که چی می خوام ! من توی اوپن کارت می خوام یه سری اطلاعات رو از یه دیتابیس

دیگه (به جز مال خودش !) نشون بدم ولی یه مشکل دارم من راحت به دیتابیس مورد نظر وصل میشم
و اطلاعات رو می گیرم و به صورت مجزا امتحان کردم جواب داد ولی توی اوپن کارت چون توابع استفاده از دیتابیس رو خودش تعریف کرده وقتی من ماژول خودم رو اینکلود می کنم اجرا میشه ولی این دیتابیس منو به
عنوان دیتابیس اوپن کارت در نظر می گیره و یکی دو جین ارور میده که فلان جدول ها وجود نداره و ادامه قضایا (یعنی جدول های اوپن کارتو می خواد !) . حالا من هرچی با مخفی سازی private , public و غیره امتحان
می کنم نمیشه!
حالا تو رو خدا چند روزه که نه چند شبه خواب ندارم اینقدر به این ور میرم !( از اون اخلاق ها هم دارم که وقتی یه چیز جواب نده بدتر گیر می دم بهش که درستش کنم !!! :متفکر:)
کمک کنید که به این ابله :شیطان:بفهمونم که وقتی اون اطلاعات رو خوند و توی متغیر ذخیره کرد بی خیال اون دیتابیس بشه و دیتابیس خودشو بشناسه!
... باتشکر لطفا" کمک کنید :گریه:

mehrdad.t
سه شنبه 30 آذر 1389, 14:34 عصر
ای بابا ! یعنی کسی نیست کمک کنه ؟!

mohsen6500
سه شنبه 30 آذر 1389, 14:48 عصر
با کلوز کارت حل نمیشه؟
مثلا دیتا بیس اول رو ببندی و بعد دیتا بیس دوم رو باز کنی؟
یا اینکه با دیتا بیس اول هم کار داری؟
اگر با اولی کاری نداری
خوب اینو بزن


<?php
$close_db01=mysql_close();
?>
داخل پرانتز هم اسم دیتا بیس تو بنویس
موفق باشی

mehrdad.t
سه شنبه 30 آذر 1389, 20:58 عصر
با تشکر

این نشد ! این ارور ها رو دارم !




Notice: Use of undefined constant dle - assumed 'dle' in C:\wamp\www\assrshop.com\index.php on line 82

Warning: mysql_close() expects parameter 1 to be resource, string given in C:\wamp\www\assrshop.com\index.php on line 82
Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at C:\wamp\www\assrshop.com\index.php:77) in C:\wamp\www\assrshop.com\system\library\session.ph p on line 11Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at C:\wamp\www\assrshop.com\index.php:77) in C:\wamp\www\assrshop.com\system\library\session.ph p on line 11Warning: Cannot modify header information - headers already sent by (output started at C:\wamp\www\assrshop.com\index.php:77) in C:\wamp\www\assrshop.com\index.php on line 261Warning: Cannot modify header information - headers already sent by (output started at C:\wamp\www\assrshop.com\index.php:77) in C:\wamp\www\assrshop.com\system\library\currency.p hp on line 43Warning: mysql_fetch_row() expects parameter 1 to be resource, object given in C:\wamp\www\assrshop.com\catalog\controller\common \header.php on line 22Warning: mysql_fetch_row() expects parameter 1 to be resource, object given in C:\wamp\www\assrshop.com\catalog\controller\common \header.php on line 32Warning: mysql_fetch_row() expects parameter 1 to be resource, object given in C:\wamp\www\assrshop.com\catalog\controller\common \header.php on line 42Notice: Undefined variable: posts in C:\wamp\www\assrshop.com\catalog\controller\common \header.php on line 54Notice: Undefined variable: shopvadle3 in C:\wamp\www\assrshop.com\catalog\controller\common \header.php on line 63Error: Table 'dle.currency' doesn't exist
Error No: 1146
SELECT * FROM currency ORDER BY title ASC

mohsen6500
سه شنبه 30 آذر 1389, 22:49 عصر
اینجوری نمیشه کدهاتو به طور کامل بذار تا بقیه دوستان هم ببینند و باهم همفکری کنند
تا به راه حل درست برسیم
یا علی

lianteam
چهارشنبه 01 دی 1389, 00:16 صبح
دوستان سلام:قلب:

بدون مقدمه بگم که چی می خوام ! من توی اوپن کارت می خوام یه سری اطلاعات رو از یه دیتابیس

دیگه (به جز مال خودش !) نشون بدم ولی یه مشکل دارم من راحت به دیتابیس مورد نظر وصل میشم
و اطلاعات رو می گیرم و به صورت مجزا امتحان کردم جواب داد ولی توی اوپن کارت چون توابع استفاده از دیتابیس رو خودش تعریف کرده وقتی من ماژول خودم رو اینکلود می کنم اجرا میشه ولی این دیتابیس منو به
عنوان دیتابیس اوپن کارت در نظر می گیره و یکی دو جین ارور میده که فلان جدول ها وجود نداره و ادامه قضایا (یعنی جدول های اوپن کارتو می خواد !) . حالا من هرچی با مخفی سازی private , public و غیره امتحان
می کنم نمیشه!
حالا تو رو خدا چند روزه که نه چند شبه خواب ندارم اینقدر به این ور میرم !( از اون اخلاق ها هم دارم که وقتی یه چیز جواب نده بدتر گیر می دم بهش که درستش کنم !!! :متفکر:)
کمک کنید که به این ابله :شیطان:بفهمونم که وقتی اون اطلاعات رو خوند و توی متغیر ذخیره کرد بی خیال اون دیتابیس بشه و دیتابیس خودشو بشناسه!
... باتشکر لطفا" کمک کنید :گریه:

اوپن کارت چیه؟

mehrdad.t
چهارشنبه 01 دی 1389, 13:36 عصر
اینجوری نمیشه کدهاتو به طور کامل بذار تا بقیه دوستان هم ببینند و باهم همفکری کنند
تا به راه حل درست برسیم
یا علی

راه حل خوبیه !

mehrdad.t
چهارشنبه 01 دی 1389, 13:44 عصر
خب باید بیشتر توضیح بدم ...

اوپن کارت همونطور که از اسمش پیداست سیستم فروشگاه رایگان هست ! حالا همه کاری که من می خوام انجام بدم اینکه آخرین مطالب سایت دیتالایف خودم رو توی هدر اوپن کارت بزارم ... مشکل رو هم که گفتم ...
این اوپن کارت : opencart.com که البته آی پی های ایران بلوک هست که یا باید با ف ... ش بگیری یا از این سایت هم میشه http://opencart.openfa.com/

اینم فایل index تغییر داده شده من : (البته فرقی نداره توی قسمت های دیگه هم که کدهام رو اضافه می کنم همین ارور ها رو میده ...)



<?php
// Configuration

/////////////////////////////////////////////////////////////
require_once('config.php');
// Install
if (!defined('DIR_APPLICATION')) {
header('Location: install/index.php');
exit;
}
// Startup
require_once(DIR_SYSTEM . 'startup.php');
// Application Classes
require_once(DIR_SYSTEM . 'library/customer.php');
require_once(DIR_SYSTEM . 'library/currency.php');
require_once(DIR_SYSTEM . 'library/tax.php');
require_once(DIR_SYSTEM . 'library/weight.php');
require_once(DIR_SYSTEM . 'library/length.php');
require_once(DIR_SYSTEM . 'library/cart.php');







$urlPath = "http://localhost/assrcomputer.com/"; // with " / " ...
$posts=1; //
$dbms = '';
$dbhost = 'localhost';
$dbname = 'dle';
$dbuser = 'root';
$dbpasswd = '';
$dbport = '';
$prefix = '';


$link = mysql_connect("$dbhost", "$dbuser", "$dbpasswd") or die("خطاي اتصال : نميتواند به بانک اطلاعاتي وصل شود");
mysql_select_db("$dbname") or die("<font color = red>" ."اطلاعات مربوط به ديتابيس را درست وارد نكرده ايد...!" ."</font color>");
mysql_set_charset('utf8',$link);

//get title
$result=mysql_query("SELECT title From dle_post ",$link);
$titles1=array();
while ($row = mysql_fetch_row($result))
{
array_push ($titles1, $row[0]);
}
//get short_storys
$result=mysql_query("SELECT short_story From dle_post ",$link);

$short_storys1=array();
while ($row = mysql_fetch_row($result))
{
array_push ($short_storys1, $row[0]);
}
$result=mysql_query("SELECT id From dle_post ",$link);
$dle_ids1=array();
while ($row = mysql_fetch_row($result))
{
array_push ($dle_ids1, $row[0]);
}


$shopvadle1 ='<div class="mainshopvadle">'.'<div class="postmainshopvadle">'.'ارسال'.'</div>'.'<div class="blank">'.'</div>'.'<div class="storysshopvadle ">'.'خلاصه ارسال'.'</div>'.'</div>';
$shopvadle2 ='<marquee onmouseout="this.start()" onmouseover="this.stop()" direction="up" scrolldelay="100" scrollamount="2" width="460" height="160">' ;
for($i=0;$i<$posts;$i++){

$shopvadle3 ='</br>'.'<div class="maindle">'.'<div class="postdle">'.'<a href="'.$urlPath.'index.php?newsid='.$dle_ids1[$i].'" target="_blank">'.$titles1[$i].'</a>'.'</div>'.'<div class="blank">'.'</div>'.'<div class="dleshort_storys1">'.$short_storys1[$i].'</div>'.'</div>'.'</marquee>';

}
$shopvadle=$shopvadle1.$shopvadle2.$shopvadle3;




mysql_close($link);

echo $shopvadle;

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////


// Registry
$registry = new Registry();
// Loader
$loader = new Loader($registry);
$registry->set('load', $loader);
// Config
$config = new Config();
$registry->set('config', $config);
// Database
$db = new DB(DB_DRIVER, DB_HOSTNAME, DB_USERNAME, DB_PASSWORD, DB_DATABASE);
$registry->set('db', $db);


// Settings
$query = $db->query("SELECT * FROM " . DB_PREFIX . "setting");
foreach ($query->rows as $setting) {
$config->set($setting['key'], $setting['value']);
}
// Log
$log = new Log($config->get('config_error_filename'));
$registry->set('log', $log);
// Error Handler
function error_handler($errno, $errstr, $errfile, $errline) {
global $config, $log;
switch ($errno) {
case E_NOTICE:
case E_USER_NOTICE:
$error = 'Notice';
break;
case E_WARNING:
case E_USER_WARNING:
$error = 'Warning';
break;
case E_ERROR:
case E_USER_ERROR:
$error = 'Fatal Error';
break;
default:
$error = 'Unknown';
break;
}

if ($config->get('config_error_display')) {
echo '<b>' . $error . '</b>: ' . $errstr . ' in <b>' . $errfile . '</b> on line <b>' . $errline . '</b>';
}

if ($config->get('config_error_log')) {
$log->write('PHP ' . $error . ': ' . $errstr . ' in ' . $errfile . ' on line ' . $errline);
}
return TRUE;
}
// Error Handler
set_error_handler('error_handler');
// Request
$request = new Request();
$registry->set('request', $request);

// Response
$response = new Response();
$response->addHeader('Content-Type: text/html; charset=utf-8');
$registry->set('response', $response);
define('HTTP_SERVER', 'http://' . $_SERVER['HTTP_HOST'] . rtrim(dirname($_SERVER['PHP_SELF']), '/') . '/');
define('HTTP_IMAGE', HTTP_SERVER . 'image/');
if ($config->get('config_ssl')) {
define('HTTPS_SERVER', 'https://' . $_SERVER['HTTP_HOST'] . rtrim(dirname($_SERVER['PHP_SELF']), '/') . '/');
define('HTTPS_IMAGE', HTTPS_SERVER . 'image/');
} else {
define('HTTPS_SERVER', 'http://' . $_SERVER['HTTP_HOST'] . rtrim(dirname($_SERVER['PHP_SELF']), '/') . '/');
define('HTTPS_IMAGE', HTTPS_SERVER . 'image/');
}
// Store
$query = $db->query("SELECT * FROM " . DB_PREFIX . "store WHERE url = '" . $db->escape(HTTP_SERVER) . "'");
if ($query->num_rows) {
foreach ($query->row as $key => $value) {
$config->set('config_' . $key, $value);
}
}
// Cache
$registry->set('cache', new Cache());
// Session
$session = new Session();
$registry->set('session', $session);

// Document
$registry->set('document', new Document());
// Language Detection
$languages = array();
$query = $db->query("SELECT * FROM " . DB_PREFIX . "language");
foreach ($query->rows as $result) {
$languages[$result['code']] = array(
'language_id' => $result['language_id'],
'name' => $result['name'],
'code' => $result['code'],
'locale' => $result['locale'],
'directory' => $result['directory'],
'filename' => $result['filename']
);
}
$detect = '';
if (isset($request->server['HTTP_ACCEPT_LANGUAGE']) && ($request->server['HTTP_ACCEPT_LANGUAGE'])) {
$browser_languages = explode(',', $request->server['HTTP_ACCEPT_LANGUAGE']);

foreach ($browser_languages as $browser_language) {
foreach ($languages as $key => $value) {
$locale = explode(',', $value['locale']);
if (in_array($browser_language, $locale)) {
$detect = $key;
}
}
}
}
if (isset($session->data['language']) && array_key_exists($session->data['language'], $languages)) {
$code = $session->data['language'];
} elseif (isset($request->cookie['language']) && array_key_exists($request->cookie['language'], $languages)) {
$code = $request->cookie['language'];
} elseif ($detect) {
$code = $detect;
} else {
$code = $config->get('config_language');
}
if (!isset($session->data['language']) || $session->data['language'] != $code) {
$session->data['language'] = $code;
}
if (!isset($request->cookie['language']) || $request->cookie['language'] != $code) {
setcookie('language', $code, time() + 60 * 60 * 24 * 30, '/', $request->server['HTTP_HOST']);
}
$config->set('config_language_id', $languages[$code]['language_id']);
// Language
$language = new Language($languages[$code]['directory']);
$language->load($languages[$code]['filename']);
$registry->set('language', $language);
// Customer
$registry->set('customer', new Customer($registry));
// Currency
$registry->set('currency', new Currency($registry));
// Tax
$registry->set('tax', new Tax($registry));
// Weight
$registry->set('weight', new Weight($registry));
// Length
$registry->set('length', new Length($registry));
// Cart
$registry->set('cart', new Cart($registry));
// Front Controller
$controller = new Front($registry);
// SEO URL's
$controller->addPreAction(new Action('common/seo_url'));
// Router
if (isset($request->get['route'])) {
$action = new Action($request->get['route']);
} else {
$action = new Action('common/home');
}
// Dispatch
$controller->dispatch($action, new Action('error/not_found'));
// Output
$response->output();





?>

mohsen6500
چهارشنبه 01 دی 1389, 15:00 عصر
$link = mysql_connect("$dbhost", "$dbuser", "$dbpasswd") or die("خطاي اتصال : نميتواند به بانک اطلاعاتي وصل شود");
mysql_select_db("$dbname")

سلام ودست عزیز
دیگه وقتی نام هاست و اینارو میریزی توی یه متغییر برای صدا زدنش لازم نیست اونو توی کوتیشن بذاری
پس :


$link = mysql_connect($dbhost, $dbuser, $dbpasswd) or die("خطاي اتصال : نميتواند به بانک اطلاعاتي وصل شود");
mysql_select_db($dbname)




("SELECT id From dle_post ",$link)

اشتباه بعدی اینه که شکل درست دستور سلکت کویری این جوریه


"select * from dle_post order by id ",$link)

بقیه شو هم من خیلی سوادم نمیکشه
موفق باشی

lianteam
چهارشنبه 01 دی 1389, 21:55 عصر
اشتباه بعدی اینه که شکل درست دستور سلکت کویری این جوریه


"select * from dle_post order by id ",$link)

بقیه شو هم من خیلی سوادم نمیکشه
موفق باشی
میگما من نفهمیدم شما منظورتون کدوم سلکت بود؟
اگه منظورتون حرف بزرگ کوچیکه که مشکلی نداره واسه کوئری ... اگه منظورت * به جای نام هست باز هم مشکلی نداره فقط به جای اینکه همه فیلد ها رو بگیره فیلد مورد نظر رو میگیره
ولی خوب چه کاری بهتر بود یه سلکت به قول شما میزد روی دیتابیس و بعد فیلداشو میکشید بیرون تا اینکه هر بار بخواد بره سراغ دیتابیس بدبخت

mehrdad.t
پنج شنبه 02 دی 1389, 14:56 عصر
حرف شما درست ! ولی اصلا" مشکل اینا نیست ! چون الان اون چیزایی که می خوام رو توی صفحه نشون میده ولی دیگه اون توابع اصلی اجرای نمیشه میگه سیشن قبل استارت شده و اینها ...