2013-08-17 206 views
0

所以我把这个功能放在一起来创建我需要的东西来运行我的东西,但它不起作用。不抛出错误,只是不起作用。每个查询都经过测试,它们都可以工作,但是当它们结合时它们不会。这里是我试图运行的整个代码使用函数创建表格表格?

<?php 
$dbloc = "localhost"; 
$dbname = "databasename"; 
$dbuser = "databaseuser"; 
$dbpass = "databasepass"; 
$create = mysql_connect($dbloc, $dbuser, $dbpass); 
mysql_select_db($dbname,$create); 


function buildDB() { 
    $sql1 = "CREATE TABLE IF NOT EXISTS company (
     ID   INT NOT NULL AUTO_INCREMENT, 
     PRIMARY KEY(ID), 
     CompanyName  VARCHAR(256), 
     HomePage   VARCHAR(1024), 
     AboutUs   VARCHAR(2048))"; 
    $sql2 = "CREATE TABLE IF NOT EXISTS data (
     ID   INT NOT NULL AUTO_INCREMENT, 
     PRIMARY KEY(ID), 
     User    VARCHAR(128), 
     Pass    VARCHAR(128), 
     Type    VARCHAR(128) DEFAULT 'Visitor', 
     Signed    DATETIME)"; 



MySQL_QUERY; 

    return mysql_query($sql1) && mysql_query($sql2); 
} 
?> 

它有什么问题?当我在投入错误之前把private放在函数之前,所以我删除了它。没有错误,但没有做任何事情。

+0

你是不是调用该函数的任何地方,是吗?并且全局函数不会获得像'private'这样的可见性修饰符;只有在课堂上才有效。 – mario

+0

这就是整个代码,我认为这是一个函数的定义和调用。我是否需要将它称为某处,如果是这样,我该怎么做? –

+0

想通了,在'}'后面打了一个电话,它工作。谢谢! –

回答

1

该代码不包含函数调用,只是函数定义。通过在}之后添加buildDB();代码执行。

0

你必须调用该函数。

,你可以在你的代码写:

buildDB(); 
后续的线下

mysql_select_db($dbname,$create);