لطفا سریع جواب بدین

mansourjoon

New Member
سلام
مشکل من اینجاست که در صفحه ی اول از لیست باکس یک گزینه رو انتخاب می کنم تا دیتابیسی براسای ولیوی اون ساخته بشه که میشه و در صفحه ی دوم از مقدار ولیوی اون دیتابیسی که ساختم و در سِشِن قرارش دادم می خام استفاده کنم تا در اون دیتابیس تیبل بسازم اما خطای " No databse selected " می ده چرا ؟ باید چی کار کرد ؟



PHP:
کد صفحه  ی اول
<?php
session_start();
?>
.
.
.

          <?php 
         $dname=$_POST['dname'];
         $_SESSION['dname']=$dname;
         $ok=$_POST['ok'];
         if ( $_POST['ok'])
          {
           $con=mysql_connect('localhost','root','');
           mysql_query("setname utf8");
           mysql_query("set characterset utf8");
           mysql_query("setsession collation_connection = utf_persian_ci");
           $createdb="create database $_SESSION[dname]";
           $query=mysql_query($createdb);

          }
        ?>
کد صفحه  ی دوم

  <?php
session_start();
?>
.
.
.
.
<?php
$_SESSION['$dname']=$dname;
$id=$_POST['id'];
$code=$_POST['code'];
$name=$_POST['name'];
$family=$_POST['family'];
$degree=$_POST['degree'];
$major=$_POST['major'];
$ok2=$_POST['ok2'];
if ($_POST['ok2'])
 {
     $con1=mysql_connect('localhost','root','');
     $db=mysql_select_db('$_SESSION[dname]',$con1);
$crtable = "create table student ($id int primary key not null , $code int not null, '$name' varchar(200) not null, '$family' varchar(200) not null, '$degree' varchar(200) not null, '$major' varchar(200) not null) engine = myisam ";
    $query=mysql_query($crtable);
    die(mysql_error());
    
 {
?>



 
آخرین ویرایش:

pasargad-ir

Active Member
آخه دیتابیس رو مشخص نکردی

قبل از Query این رو بزار

[LTR]
PHP:
mysql_select_db ("$dbname")
  or die ("Could not select database");
[/LTR]
 

mansourjoon

New Member

ممنون pasargad-ir عزیز.
منظورتون کجا ست؟! من که در هر دو صفحه گذاشتم! البته کدتون رو امتحان هم کردم ولی باز همون جواب رو گرفتم .

 

pasargad-ir

Active Member
ممنون pasargad-ir عزیز.​


منظورتون کجا ست؟! من که در هر دو صفحه گذاشتم! البته کدتون رو امتحان هم کردم ولی باز همون جواب رو گرفتم .​


ببین وقتی می گی

No databse selected

رو نشون می ده باید بانک رو مشخص کنی.

PHP:
<?php
session_start();
?>
<?php 
$dname=$_POST['dname'];
$_SESSION['dname']=$dname;
$ok=$_POST['ok'];
if ( $_POST['ok'])
{
 mysql_select_db ("$dname")
    or die ("Could not select database");  
 $con=mysql_connect('localhost','root','');
 mysql_query("setname utf8");
 mysql_query("set characterset utf8");
 mysql_query("setsession collation_connection = utf_persian_ci");
 $createdb="create database $_SESSION[dname]";
 $query=mysql_query($createdb);
}
?>
 

pasargad-ir

Active Member
اینم کد صفحه 2
PHP:
<?php
session_start();
?>
<?php
$_SESSION['$dname']=$dname;
$id=$_POST['id'];
$code=$_POST['code'];
$name=$_POST['name'];
$family=$_POST['family'];
$degree=$_POST['degree'];
$major=$_POST['major'];
$ok2=$_POST['ok2'];
if ($_POST['ok2'])
{
 mysql_select_db ("$dname")
     or die ("Could not select database");
 $con1=mysql_connect('localhost','root','');
 $db=mysql_select_db('$_SESSION[dname]',$con1);
 $crtable = "create table student ($id int primary key not null , $code int not null, '$name' varchar(200) not null, '$family' varchar(200) not null, '$degree' varchar(200) not null, '$major' varchar(200) not null) engine = myisam ";
    $query=mysql_query($crtable);
     die(mysql_error());    
}
?>
 

mansourjoon

New Member
اینم کد صفحه 2
PHP:
<?php
session_start();
?>
<?php
$_SESSION['$dname']=$dname;
$id=$_POST['id'];
$code=$_POST['code'];
$name=$_POST['name'];
$family=$_POST['family'];
$degree=$_POST['degree'];
$major=$_POST['major'];
$ok2=$_POST['ok2'];
if ($_POST['ok2'])
{
 mysql_select_db ("$dname")
     or die ("Could not select database");
 $con1=mysql_connect('localhost','root','');
 $db=mysql_select_db('$_SESSION[dname]',$con1);
 $crtable = "create table student ($id int primary key not null , $code int not null, '$name' varchar(200) not null, '$family' varchar(200) not null, '$degree' varchar(200) not null, '$major' varchar(200) not null) engine = myisam ";
    $query=mysql_query($crtable);
     die(mysql_error());    
}
?>

ببینم منظورتون رو درست فهمیدم یعنی من باید در صفحه ی دوم قبل از اتصال به دیتابیس اون رو select کنم خب این که خطا می گیره که اون وقت ؟! نمی گیره !
 

mansourjoon

New Member
اگه خطا میگیره کد خطا رو یزار ببینم.
خطایی که در هر دو صفحه بروز می کنه به شکل زیر هست.
منظور از *: نام درایو ؛ منظور ازpagename.php: نام صفحه ؛ و منظور از line number: شماره خطی است در برنامه ، که خطا اونجا بروز نموده
البته ببخشید توضیح دادم گفتم که واضح تر باشه.
خط آخر هم "Could not select database" پیام خطاییه که شما در دستورdie ذکر فرمودید.
Warning: mysql_select_db() [function.mysql-select-db]: Access denied for user 'ODBC'@'localhost' (using password: NO) in *:\wamp\www\sitename\pagename.php on line (line number)

Warning: mysql_select_db() [function.mysql-select-db]: A link to the server could not be established in *:\wamp\www\systemnomarat\pagename.php on line (line number)
Could not select database
از پیگیریتون باز هم تشکر می کنم .

 
آخرین ویرایش:

sharktech

کاربر فعال
این خط از کدت رو به این صورت بنویس :

کد شما :

PHP:
$db=mysql_select_db('$_SESSION[dname]',$con1);

کد صحیح :

PHP:
$db_ses = $_SESSION[dname];
$db=mysql_select_db('$db_ses',$con1);
 

mansourjoon

New Member
PHP:
<?php
$_SESSION['$dname']=$dname;
$id=$_POST['id'];
$code=$_POST['code'];
$name=$_POST['name'];
$family=$_POST['family'];
$degree=$_POST['degree'];
$major=$_POST['major'];
$ok2=$_POST['ok2'];
if ($_POST['ok2'])
 {  
     $con1=mysql_connect('localhost','root','');
    $db_ses = $_SESSION[dname];
    $db=mysql_select_db('$db_ses',$con1);  
    //mysql_query("setname 'utf8'");
     $crtable = "create table student ($id int primary key not null , $code int not null, '$name' varchar(200) not null, '$family' varchar(200) not null, '$degree' varchar(200) not null, '$major' varchar(200) not null) engine = myisam ";
    $query=mysql_query($crtable);
    die(mysql_error());
    
 }
?>


ببینم الان این کد درسته از نظر شما ؟
 

جدیدترین ارسال ها

بالا