2013-02-24 70 views
0

guys。我想就這個腳本,或其他具有同樣的效果:無法創建用於使用diff名稱創建數據庫的腳本。 PHP/MYSQL

<?php 
$con = mysql_connect("localhost","peter","abc123"); 
if (!$con) 
    { 
    die('Could not connect: ' . mysql_error()); 
    } 

if (mysql_query("CREATE DATABASE my_db",$con)) 
    { 
    echo "Database created"; 
    } 
else 
    { 
    echo "Error creating database: " . mysql_error(); 
    } 

mysql_close($con); 
?> 

要創建具有不同名稱的數據庫,例如: 第一次將創建一個名爲「新聞1」,下一次數據庫,該腳本將只是做某事。像那樣:news1 + 1 = news2,並且會創建名爲news2的數據庫,等等......

我希望你明白了我的觀點,如果你能幫我做到這一點,我將非常感激... 問候,丹尼斯賽義夫。

+3

爲什麼你需要單獨的數據庫呢?只需在每個表中將該數字設爲一個字段即可。 - 無論如何,你的具體編碼問題是什麼?如何增加數字後綴,並連接到一個字符串? – mario 2013-02-24 18:46:54

+0

創建單獨的數據庫肯定會矯枉過正...... – 2013-02-24 18:49:40

+0

嗯,我想製作一個新聞系統。我認爲,不知怎的,我可以做到這一點。 – 2013-02-24 18:50:44

回答

0

要做到這一點,我猜你不只想循環100次?

您需要將變量保存到文本文件然後再次調用它。

寫作$文本文件:

$var_str = var_export($text, true); 
$var = "<?php\n\n\$$text = $var_str;\n\n?>"; 
file_put_contents('filename.php', $var); 

再次檢索它:

include 'filename.php'; 
echo $text; 

一起:

<?php 
$con = mysql_connect("localhost","peter","abc123"); 
if (!$con) 
    { 
    die('Could not connect: ' . mysql_error()); 
    } 
$db_number = get_var(); 
$my_db = 'news' . $db_number; 
if (mysql_query("CREATE DATABASE ".$my_db,$con)) 
    { 
    echo "Database created"; 
    } 
else 
    { 
    echo "Error creating database: " . mysql_error(); 
    } 
$new_db_number = $db_number + 1; 
save_var($new_db_number); 
mysql_close($con); 

function save_var($var) { 
$var_str = var_export($text, true); 
$var = "<?php\n\n\$$text = $var_str;\n\n?>"; 
file_put_contents('filename.php', $var); 
} 
function get_var() 
include 'filename.php'; 
return $text; 
} 
?> 

PS我認爲應該只工作打字沒有測試

0

數據庫應該是靜態的。這是一次性的事件,伴隨着創建數據庫:

  • 指標
  • 各種約束
  • 觸發器
  • 存儲過程

這可以用做SQL腳本。

然後PHP的東西訪問該數據庫只需要使用selectinsertdeleteupdate陳述 - 或者我更喜歡使用存儲過程。

你將會有很多有多個數據庫的麻煩。此外,我不願意編寫一個PHP腳本,每次都要這樣做,並對它們進行管理。