2013-06-24 26 views
0

我是一个数据库的一些信息,并希望在我的网站上打印它们。所以要做到这一点,我想为每个信息创建一个“the”功能,显示:Php的MySQL问题与MySQL的查询和功能

$profileMeta = mysql_query("SELECT * FROM profiles WHERE profileID = '$profileID' "); 

    while($meta = mysql_fetch_array($profileMeta)) { 

     //Variablen festlegen 
     $profileID = $meta['profileID']; 
     $profileName = $meta['profileName']; 
     $slogan = $meta['slogan']; 
    } 

    //THE - Funktionen 

    //profileID 
    function theProfileID() { 
     echo $profileID; 
    } 

    //profileName 
    function theProfileName() { 
     echo $profileName; 
    } 

我将这个请求包含在我的profile.php文件中。 但是,当我要打印与PROFILENAME“<?php theProfileName(); ?>”它没有任何帮助工作:(

但是为什么呢?我无法找到问题...

感谢。

对不起,我的英语错误,我来自德国

+4

这是一个范围的问题 - '$ profileName'是在函数中的局部变量,它没有设置任何地方 – andrewsi

+1

功能的可调范围的问题,你是。在函数之外定义$ profileID n所以你需要添加全局$ profileID;以上的回声,它会工作 – Dave

+0

或发送配置文件名称作为参数在功能... – sinisake

回答

1
$profileMeta = mysql_query("SELECT * FROM profiles WHERE profileID = '$profileID' "); 

while($meta = mysql_fetch_array($profileMeta)) { 

    //Variablen festlegen 
    $profileID = $meta['profileID']; 
    $profileName = $meta['profileName']; 
    $slogan = $meta['slogan']; 
} 

//THE - Funktionen 

//profileID 
function theProfileID() { 
global $profileID;  //Global 
    echo $profileID; 
} 

//profileName 
function theProfileName() { 
global $profileName;  //////Global 
    echo $profileName; 
} 
+1

从技术上讲,我个人更喜欢它只有一个变量全局变量(例如$ meta),并且该函数返回数组的索引:'function theProfileID(){global $ meta; echo $ meta ['profileID']; }' –