ورود

نسخه کامل مشاهده نسخه کامل : اتصال به بانك



pazahr
11-01-2008, 13:23
سلام.
من يك سايت با صفحات PHP دارم كه صفحه index.php آن موقع اجرا نمي تونه به بانك متصل بشه.
از طريق Cpanel امكان كنترل phpmyadmin هست. اونجا يك ديتابيس جديد به نام midi ساختم و كدهاي sql مربوط به ايجاد جداول رو هم در بانك اطلاعات اجرا كردم تا table ها ساخته بشن و البته با موفقيت ساخته شدن. اما وقتي صفحه index.php كه upload كردم مي خوام مستقيم از روي وب اجرا كنم پيغام هاي زير رو ميده :


Warning: mysql_connect() [function.mysql-connect]: Access denied for user 'root'@'localhost' (using password: NO) in /home/momslov/public_html/rayaneh/index.php on line 5

Warning: mysql_select_db() [function.mysql-select-db]: Access denied for user 'nobody'@'localhost' (using password: NO) in /home/momslov/public_html/rayaneh/index.php on line 8

Warning: mysql_select_db() [function.mysql-select-db]: A link to the server could not be established in /home/momslov/public_html/rayaneh/index.php on line 8

چند خط اول فايل index.php :

<?php
// required variables
require("config.php");
// connects to database
mysql_connect("$host","$user","$pass");

// selects database
mysql_select_db("$database");

?>

اينم كد ساخت جداول :


CREATE TABLE card_payment (
posted text NOT NULL,
order_id varchar(25) NOT NULL,
PaymentMethod text NOT NULL,
CreditCard text NOT NULL,
ExpDate text NOT NULL,
AMOUNT text NOT NULL,
PRIMARY KEY (order_id),
UNIQUE order_id (order_id)
);



CREATE TABLE products (
maingroup varchar(50),
secondgroup varchar(50),
code_no varchar(30) NOT NULL,
item varchar(100),
text text,
price varchar(20),
image varchar(30),
shipping varchar(20),
PRIMARY KEY (code_no)
);

اينم چند خط اول فايل config.php :


<?php

/// database host, usually localhost
$host = "localhost";

// database username
$user = "root";

// database password
$pass = "";

// database name
$database = "midi";

// Email account for receiving orders
$receipt = "root@localhost";

// Currency
$txt_currency="هزار تومان";

// Firm freight charge in format 5.00. If not used = 0
$add_freight = "10.00";

// Tax in %. Enter 16.00 for 16%. If not used = 0
$add_tax = "0";

// Thumbs size in item list
$thumbs_width="50";
$thumbs_height="40";


// WinNT/2000 use C://Inetpub//[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]
// Linux/UNIX use /home/perry/public_html/images/
// chmod the images folder to 777 in Linux/UNIX

$upload_path = "/var/[ برای مشاهده لینک ، لطفا با نام کاربری خود وارد شوید یا ثبت نام کنید ]";

//

مشكل اصلي من اتصال صحيح به ديتابيسه. لطفا راهنماييم كنيد چه تنظيماتي رو بايد توي phpmyadmin انجام بدم ؟
كجاي كارم ايراد داره؟

neopersia
11-01-2008, 14:31
توی PhpMyAdmin نیازی نیست کاری بکنی
این کد شاید تو لوکال هاست اجرا بشه ولی تو سرور روی اینترنت امکان نداره
آخه با نام کاربری root و بدون کلمه عبور که هیچ سروری اجازه اتصال به دیتابیسو نمیده
شما باید نام کاربری دیتابیس رو به علاوه کلمه عبور اون دیتابیس تو فایل config وارد کنید به جای $user و $pass

neopersia
11-01-2008, 14:38
یه چیزی رو یادم رفت بگم
تو لوکال هاست میشه با PhpMyAdmin یوزر ساخت و اونا رو به دیتابیس تخصیص داد ولی توی سرور اینترنتی باید از طریق Cpanel یوزر رو بسازید و سپس اونو به دیتابیس مورد نظرتون اختصاص بدید بعد از نام یوزر و کلمه عبورش برای کدتون استفاده کنید

pazahr
11-01-2008, 16:21
ممنون از پاسختون

قبل از اينكه مشكلم رو مطرح كنم توي CPanel يك user با نام كاربري root و رمز 123 ساختم و فايل config.php رو هم متناسب با اين نام كاربري و پسورد Update كردم اما مشكل همچنان باقيست.

ضمنا اين صفحه قبلا توسط يكي از دوستان از روي وب سايت بدون مشكل اجرا شده.

neopersia
12-01-2008, 00:57
ببینید وقتی تو سی پنل برای دیتابیس یوزر میسازید معمولاً نام کاربری سی پنلتون بعلاوه یک آندرلاین قبل از نام کاربری دیتابیس وارد میشه یعنی اگه نام کاربری سی پنل شما Test باشه و برای نام کاربری دیتابیس root رو وارد کرده باشید توی اسکرپت طراحی شده باید این رو به عنوان نام کاربری وارد کنید:

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید