【问题标题】:Use of undefined constant HOST, USER, PASS, DBSA error?使用未定义常量 HOST、USER、PASS、DBSA 错误?
【发布时间】:2014-04-21 21:50:32
【问题描述】:

我遇到了问题,不明白为什么会这样......

这种方式效果很好:

<?php


    $conn = mysql_connect('localhost','root','') or die ('Error connection<strong>'.mysql_error().'</strong>');
    $dbsa = mysql_select_db('project') or die ('Error selecting bd:   <strong>'.mysql_error().'</strong>');

?>

为什么这种方式会出错:

<?php

        define(HOST,'localhost');
        define(USER,'root');
        define(PASS,'');
        define(DBSA,'project');

        $conn = mysql_connect(HOST,USER,PASS) or die ('Error connection<strong>'.mysql_error().'</strong>');
        $dbsa = mysql_select_db(DBSA) or die ('Error selecting bd:   <strong>'.mysql_error().'</strong>');

    ?>

错误:

注意:在第 2 行的 F:\Xampp\htdocs\project\bd\connect.php 中使用未定义的常量 HOST - 假定为“HOST”

注意:在第 3 行的 F:\Xampp\htdocs\project\bd\connect.php 中使用未定义的常量 USER - 假定为 'USER'

注意:在第 4 行的 F:\Xampp\htdocs\project\bd\connect.php 中使用未定义的常量 PASS - 假定为“PASS”

注意:在第 5 行的 F:\Xampp\htdocs\project\bd\connect.php 中使用未定义的常量 DBSA - 假定为“DBSA”

【问题讨论】:

    标签: php apache xampp


    【解决方案1】:

    define 的正确语法是

    define('CONSTANT_NAME', 'SOME VALUE'); 
    

    【讨论】:

      【解决方案2】:

      您需要用引号将 definied 常量括起来

      define('HOST','localhost');
      define('USER','root');
      define('PASS','');
      define('DBSA','project');
      

      现在你可以不带引号调用它们了

      $conn = mysql_connect(HOST,USER,PASS) or die ('Error connection<strong>'.mysql_error().'</strong>');
      

      【讨论】:

      • 谢谢,它有效!我不知道这在常量中是必要的!我看到的没有使用''的文档,可能是旧文档!谢谢!
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-04
      • 1970-01-01
      • 1970-01-01
      • 2014-05-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多