Bob Marks
Bob Marks

Reputation: 139

How to write out sql in php?

Hello i am trying to get this into a function getTableResults. I am unfamiliar with php.

SELECT *
FROM members
INNER JOIN member_details
ON members.member_id=member_details.member_id;

I have a similar function i am trying to base it by but i am really unsure as the sql is longer.

function getResults($tablename) {
   $sql = "SELECT * FROM " . $tablename;
   $mysqlConnection = getSQLConnection();

   $ResultSet = $mysqlConnection->query($sql);
 return $ResultSet;
}

Would this be it?

function getResults($tablename) {
   $sql = "SELECT *
           FROM members
           INNER JOIN member_details
           ON members.member_id=member_details.member_id; " . $tablename;
   $mysqlConnection = getSQLConnection();

   $ResultSet = $mysqlConnection->query($sql);
 return $ResultSet;
}

Upvotes: 0

Views: 184

Answers (5)

Benjamin
Benjamin

Reputation: 1372

function getTableResults(){
$sql = "SELECT * FROM members 
        INNER JOIN member_details
        ON members.member_id=member_details.member_id";

$mysqlConnection = getSQLConnection();
$ResultSet = $mysqlConnection->query($sql);

return $ResultSet;
}

Please note that the functions of mysql have been deprecated. mysqli should be used instead. PHP.net says that mysql's functions will be removed in the future, so you should switch now. In practice, there is very little difference between the code of mysql and the code of mysqli. Please see this site for examples on how to use mysqli: http://www.php.net/manual/en/mysqli.query.php

Upvotes: 2

zzlalani
zzlalani

Reputation: 24354

Check this

function getTableResults() {
   $sql = "SELECT *
           FROM members
           INNER JOIN member_details
           ON members.member_id=member_details.member_id";
   $mysqlConnection = getSQLConnection();

   $ResultSet = $mysqlConnection->query($sql);
   return $ResultSet;
}

EDIT:

After your Edit in the question Would this be it

No because what you are trying is to concatenating the table name in the query..

details.member_id; " . $tablename; <- can't do this ..

This will make your query look like ON members.member_id=member_details.member_id; members (if you send members as the $tablename in the parameter)

Upvotes: 3

user3012708
user3012708

Reputation: 946

function getTableResults() {
   $sql = "SELECT * FROM members INNER JOIN member_details ON Members.member_id=member_details.member_id";
   $mysqlConnection = getSQLConnection();

   $ResultSet = $mysqlConnection->query($sql);
 return $ResultSet;
}

Basically the same, you change your SQL query in the $sql variable.

Note: This function does not accept a tablename now, as you had a very specific SQL query.

Upvotes: 4

Chris Forrence
Chris Forrence

Reputation: 10084

It would end up looking something like this:

function getResults($tablename) {
    $sql = "SELECT * FROM members"
           . " INNER JOIN member_details"
           . " ON members.member_id=member_details.member_id";
    $mysqlConnection = getSQLConnection();

    $ResultSet = $mysqlConnection->query($sql);
    return $ResultSet;
}

Upvotes: 1

Lakmal Vithanage
Lakmal Vithanage

Reputation: 2777

use this code

 <?php

$con=mysqli_connect("example.com","peter","abc123");

// Check connection


 if (mysqli_connect_errno())

      {


 echo "Failed to connect to MySQL: " . mysqli_connect_error();

  }
// Create database
$sql="SELECT *
FROM members
INNER JOIN member_details

ON members.member_id=member_details.member_id";

if (mysqli_query($con,$sql))
{

echo "Database my_db created successfully";

  }else{

echo "Error creating database: " . mysqli_error($con);

 }?>

Upvotes: 1

Related Questions