This question already has an answer here:
To select data from 1 table I'm using following code:
if(isset($UserID)) {
$users = $con->prepare("
SELECT DISTINCT
d.FirstName
,d.LastName
,d.Picture
FROM Details d
WHERE d.UserId = ?
");
$users->bind_param('i', $GetUserId);
$users->execute();
$users->bind_result(
$FirstName,
$LastName,
$Picture
);
} else {
echo "There is no User ID detected, try to refresh browser.";
}
while ($users->fetch()) { ?>
<div class="grid-group">
<span>Personal Details</span>
<div class="grid-column">
<div class="grid-item header">First Name </div>
<div class="grid-item header">Last Name </div>
<div class="grid-item header">Picture </div>
</div>
<div class="grid-column">
<div class="grid-item"><?php echo $FirstName; ?></div>
<div class="grid-item"><?php echo $LastName; ?></div>
<div class="grid-item"><?php echo $Picture; ?></div>
</div>
</div>
<?php } ?>
How can I add 1 more query to select some data from another table? Something like:
SELECT Foo, Bar, FooBar
FROM Bizz
WHERE UserId = ?
Should I use mysqli_multi_query
? But how can I use It and bind_result
after It? I can't achieve correct syntax. Or there is any other way?
I will need to print data from 2 tables like this:
while ($users->fetch()) { ?>
<div class="grid-group">
<span>Personal Details</span>
<div class="grid-column">
<div class="grid-item header">First Name </div>
<div class="grid-item header">Last Name </div>
<div class="grid-item header">Picture </div>
</div>
<div class="grid-column">
<div class="grid-item"><?php echo $FirstName; ?></div>
<div class="grid-item"><?php echo $LastName; ?></div>
<div class="grid-item"><?php echo $Picture; ?></div>
</div>
</div>
<div class="grid-group">
<span>Foo Bar</span>
<div class="grid-column">
<div class="grid-item header">Foo </div>
<div class="grid-item header">Bar </div>
<div class="grid-item header">FooBar </div>
</div>
<div class="grid-column">
<div class="grid-item"><?php echo $Foo; ?></div>
<div class="grid-item"><?php echo $Bar; ?></div>
<div class="grid-item"><?php echo $FooBar; ?></div>
</div>
</div>
<?php } ?>
For some reasons I can't use JOINS
. Have you any ideas?
UPDATE
If I prepare 2 queries in following, I got blank screen:
if(isset($UserID)) {
$users = $con->prepare("
SELECT DISTINCT
d.FirstName
,d.LastName
,d.Picture
FROM Details
WHERE d.UserId = ?
");
$users->bind_param('i', $GetUserId);
$users->execute();
$users->bind_result(
$FirstName,
$LastName,
$Picture
);
$users2 = $con->prepare("
SELECT DISTINCT
Foo
, Bar
, FooBar
FROM Bizz
WHERE UserId = ?
");
$users2->bind_param('i', $GetUserId);
$users2->execute();
$users2->bind_result(
$Foo,
$Bar,
$FooBar
);
} else {
echo "There is no User ID detected, try to refresh browser.";
}
while ($users->fetch()) { ?>
...
Have you any ideas?
to know why you get a blank screen you have to turn on error_reporting, add the following at the start of your php code before anything else:
Also add some code to show errors that might happen in MySQL:
I can see one mistake in your first query. you are using d.FirstName where as the table name is Details