MAMP,没有记录返回

时间:2011-11-14 00:36:37

标签: php mysql mamp

我从去年开放了一个项目,并且认为我在新电脑上尝试了MAMP,看起来有点酷。

看起来它全部在运行,PHP正常运行,我在phpMyAdmin中重建了数据库。

在向表中添加一些测试数据之后,我做了一个简单的测试(参见下面的文件),但我无法从数据库中检索任何内容。

当我加载test-basic.php时,它会显示“已连接到db .Selected数据库。找不到=(”

但是我测试了phpMyAdmin中的字符串(对于'likeiwassaying'数据库),它返回了结果

我觉得太近了(并且已经在小时上敲打了我的脑袋)。我错过了鼻子下的东西吗?

有任何疑难解答建议,

贾斯汀

的config.php

<?php
    $dbhost = 'localhost';
    $dbuser = 'root';
    $dbpassword = 'testpassword';
    $dbdatabase = 'likeiwassaying';
    $config_sitename = 'Cully Mail';    
    $config_author = 'jk';
    $config_basedir = 'http://localhost:8888/cullymail/';

    $db = mysql_connect($dbhost, $dbuser, $dbpassword);
    if (!$db) {
        die('Could not connect: ' . mysql_error());
    } else {
        echo 'Connected to db. ';
    }

    $db_selected = mysql_select_db($dbdatabase, $db);
    if (!$db_selected) {
        die ('Can\'t use: ' . mysql_error());
    } else {
        echo 'Selected database. ';
    }

    mysql_close($db);       

?>

测试basic.php     

    require("config.php");

    function test() {
        $q = 'SELECT * FROM contacts;';

        $result = mysql_query($q);
        $numrows = mysql_num_rows($result);


        //If it is found (if any row comes back)...
        if($numrows == 0) {
            echo "Found nothing =(";
        } else {
            echo "found something";
        }

    }

    test();

?>

1 个答案:

答案 0 :(得分:2)

在执行函数test()之前,您正在关闭数据库连接。您在config.php末尾关闭连接,这意味着在test-basic.php中定义函数时,数据库连接已不再存在,并且进一步的查询将失败。

除非您需要尽早重新获得内存资源,否则通常不需要明确调用mysql_close()。当脚本完成时,PHP将关闭连接。

$db_selected = mysql_select_db($dbdatabase, $db);
if (!$db_selected) {
    die ('Can\'t use: ' . mysql_error());
} else {
    echo 'Selected database. ';
}

// Everything is good so far. you're ready to execute queries, but...

// Don't do this!!!
mysql_close($db);