【问题标题】:PHP Code for selecting data from mySQL Database for Amazon web services [duplicate]用于从 mySQL 数据库中为 Amazon Web 服务选择数据的 PHP 代码 [重复]
【发布时间】:2017-03-24 19:32:52
【问题描述】:

目前,我正在尝试在 Amazon Web Services 上添加一个网页。该网页包含 PHP 和 HTML 代码,旨在显示本地 MySQL 数据库中的特定表。我已经创建了一个 EC2 实例和一个 AWS RDS 实例,但是,有一个问题一直在发生,这让我很困扰。通过 MySQL 在我的计算机本地主机上,显示一个表的所有记录的代码是这样的:

SELECT * from Students, StudentProfile, Job 
WHERE Students.StudentID=StudentProfile.Students_StudentID and Students.StudentID=Job.Students_StudentID;

根据上面的代码,这可以完美地执行,我确实通过在 MySQL Workbench 上执行相同的过程来确认这一点。但是,将我的名为“projectview.php”的文件(用于查看表的所有记录的 .php 文件)上传到 AWS 后,它不起作用。我知道我知道我必须更改部分代码才能将其连接到 AWS 的 RDS 实例。因此,我按照教程示例创建了基于 AWS 教程的示例页面。下面包含一个示例 .php 文件,其中包含我当前为网站显示的工作。

<HTML>
<HEAD>   
<TITLE>List Students</title>
<link href="https://fonts.googleapis.com/css?family=Varela+Round" rel="stylesheet">
<style>
  body {font-family: 'Varela Round', sans-serif;
  background-color: #ffddcc;
  color: #e64d00;
  border: 2px solid #ff7733;
  border-radius: 10px;
 }

 h1 {font-family: Georgia, serif;}

 input {color:#e64d00;}

</style>
</head>
<BODY>
 <H1>List Students</h1>  
 <?php include '../inc/dbinfo.inc';  

 $conn = @mysqli_connect("DB_SERVER","DB_USERNAME","DB_PASSWORD","DB_DATABASE" );

 if($conn->connect_error) {
 die("Connection failed:" . $conn->connect_error);
 }

 else
 {
    echo "Status:Connected.";
     echo "<br>";
  }

  $sql = "SELECT * from Students, StudentProfile, Job 
  where Students.StudentID=StudentProfile.Students_StudentID and Students.StudentID=Job.Students_StudentID";
   mysql_select_db("project2");
   $result = mysqli_query($conn, $sql);

   if(!$result) {
   die('Could not get data: ' .mysql_error());
   }
   while($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
    echo "<br>";
    echo "StudentID: " . $row["studentID"]. "<br>";
    echo "First Name: " . $row["firstName"]. "<br>";
    echo "Last Name: " . $row["lastName"]. "<br>";
    echo "Major: " . $row["Major"]. "<br>";
    echo "Level: " . $row["Level"]. "<br>";
    echo "Address: " . $row["Address"]. "<br>";
    echo "City: " . $row["City"]. "<br>";
    echo "Country: " . $row["Country"]. "<br>";
    echo "Zipcode: " . $row["Zipcode"]. "<br>";
    echo "Phone: " . $row["Phone"]. "<br>";
    echo "Job Company: " . $row["Job_Company"]. "<br>";
    echo "Job Title: " . $row["Job_Title"]. "<br>";
     }

     echo "Fetched data successfully\n";
     //$result = $conn->query($query);


     $conn->close();
     ?>
     <br>
     <FORM METHOD="LINK" ACTION="project2mainmenu.html">
     <INPUT TYPE="submit" VALUE="Return to Main Menu">
     </form>
     </body>
     </html>

此外,我注意到当我在运行代码后查看我的网页时,它会显示如下图像:

****注意:我已经上传了特定网页的所有相关文件。此外,此网页不隶属于任何其他文件。它是一个独立的文件。**

【问题讨论】:

  • 您正在混合 mysql_*() 和 mysqlI_*() 函数调用。它们属于两个不同的 API。使用 mysqli :)
  • 我明白了。好吧,事实证明我将mysql语句更改为mysqli并且它可以工作。但是,仍然存在我编写的查询没有执行的问题。我想知道它是否与连接有关。

标签: php mysql amazon-web-services amazon-ec2 amazon-rds


【解决方案1】:

应用此代码并设置您的查询,它工作正常。 我已经从新的 mysqli 创建了连接。 结果是这样的http://prntscr.com/envt1l

<HTML>
<HEAD>  
<TITLE>List Students</title>
<link href="https://fonts.googleapis.com/css?family=Varela+Round" rel="stylesheet">
<style>
body {font-family: 'Varela Round', sans-serif;
background-color: #ffddcc;
color: #e64d00;
border: 2px solid #ff7733;
border-radius: 10px;
}
h1 {font-family: Georgia, serif;}
input {color:#e64d00;}
</style>
  </head>
<BODY>
<H1>List Students</h1>
<?php //include '../inc/dbinfo.inc';
$conn = new mysqli('localhost','root','','wordpress1');
if($conn->connect_error) {
die("Connection failed:" . $conn->connect_error);
}
else
{
  echo "Status:Connected.";
   echo "<br>";
}
$sql = "SELECT * from wp_terms";
//mysql_select_db("project2");
$result = mysqli_query($conn, $sql);
if(!$result) {
die('Could not get data: ' .mysql_error());
}
foreach ($result as $value) {
  echo "<br>";
  echo "term_id: " . $value["term_id"]. "<br>";
  echo "name: " . $value["name"]. "<br>";
  echo "slug: " . $value["slug"]. "<br>";
}
 echo "Fetched data successfully\n";
 //$result = $conn->query($query);


 $conn->close();
 ?>
 <br>
 <FORM METHOD="LINK" ACTION="project2mainmenu.html">
 <INPUT TYPE="submit" VALUE="Return to Main Menu">
 </form>
 </body>
 </html>

【讨论】:

  • 仍然混合使用 2 个 API
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-07-07
  • 2016-05-30
  • 2014-10-15
  • 1970-01-01
  • 2011-01-30
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多