эй парень, поэтому я пытаюсь создать таблицу профилей, отображая данные пользователя. использовали некоторые примеры кода, которые вы увидите в приведенном ниже кодексе, прокомментировали некоторые из них, поэтому следите.получение пользовательских данных с помощью подготовленного оператора
вот мой код
// $stmt = $con->prepare("SELECT * FROM user WHERE id = ? ");
// $stmt->bind_param('s', $id);
// if($stmt->execute()){
// //$result = $stmt->get_result();
// if($result->num_rows > 0){
// // username exists
// //$stmt->bind_result($firstname, $lastname, $user_type, $email, $profession);
// echo 'No Data Found for this use';
// }else{
// $row = $stmt->fetch_array();
// $stmt = "select firstname, lastname, user_type, profession, email, dob, gender, country, phone, bio, address, created_at from user where id = $userId";
// if ($stmt = $mysqli->prepare($stmt)) {
// /* execute statement */
// $stmt->execute();
// // $stmt->store_result();
// // if($stmt->num_rows){
// /* bind result variables */
// $stmt->bind_result($firstname, $lastname, $user_type, $profession, $email, $dob, $gender, $country, $phone, $bio, $address, $created_at);
// /* fetch values */
// while ($stmt->fetch()) {
// // }
$stmt = $con->prepare("SELECT firstname, lastname, user_type, profession, email, dob, gender, country, phone, bio, address, created_at FROM user WHERE id = ?");
$stmt->bind_param('s', $userId);
$stmt->execute();
$stmt->store_result();
if(!$stmt->num_rows > 0) {
echo 'No Data Found for this user';
}
else {
$stmt->bind_result($firstname, $lastname, $user_type, $profession, $email, $dob, $gender, $country, $phone, $bio, $address, $created_at); // <- Add; #args = #cols in SELECT
$row = $stmt->fetch();
Как вы можете видеть, что есть 1 открывающая скобка }
в коде выше, что, поскольку он был компресс с HTML.
ниже HTML-код
<!-- self post back url -->
<?php
$url = 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'];
?>
<table>
<tr>
<td>
<center>
<img src="userfiles/avatars/<?php echo $row['avatar'];?>" width="150" height="150">
</center>
</td>
</tr>
<tr>
<td><label><strong>First Name</strong></label></td>
<td></td>
<td><label><?php echo $row['firstname'];?> </td>
</tr>
<tr>
<td><label><strong>Last Name</strong></label></td>
<td></td>
<td><label><?php echo $row['lastname'];?> </td>
</tr>
<tr>
<td><label><strong>User Type</strong></label></td>
<td></td>
<td><label><?php echo $row['user_type'];?> </td>
</tr>
<tr>
<td><label><strong>Profession</strong></label></td>
<td></td>
<td><label><?php echo $row['profession'];?> </td>
</tr>
<tr>
<tr>
<td><label><strong>Phone</strong></label></td>
<td></td>
<td><label><?php echo $row['phone'];?> </td>
</tr>
<tr>
<td><label><strong>Gender</strong></label></td>
<td></td>
<td><label><?php echo $row['gender'];?> </td>
</tr>
<tr>
<td><label><strong>Date Of Birth</strong></label></td>
<td></td>
<td><label><?php echo $row['dob'];?> </td>
</tr>
<tr>
<td><label><strong>Email</strong></label></td>
<td></td>
<td><label><?php echo $row['email'];?> </td>
</tr>
<tr>
<td><label><strong>Country</strong></label></td>
<td></td>
<td><label><?php echo $row['country'];?> </td>
</tr>
<tr>
<td><label><strong>Address</strong></label></td>
<td></td>
<td><label><?php echo $row['address'];?> </td>
</tr>
<tr>
<td><label><strong>Biography</strong></label></td>
<td></td>
<td><label><?php echo $row['bio'];?> </td>
</tr>
<tr>
<td><label><strong>Join Date</strong></label></td>
<td></td>
<td><label><?php echo $row['created_at'];?> </td>
</tr>
</table>
<?php
}
$mysqli->close();
?>
приведенный выше код работать, но не отображаются данные пользователя. вот скриншот: http://prntscr.com/cmfa0n
OK посмотрел на документ ... это то, что вы пытаетесь сказать, мне не нужен -> fetch(); –
Извините за мое невежество –
@OlamilekanOshodi Да, вам нужно '-> fetch()'. То, что я говорю, после этого выражения '$ stmt-> fetch();', вы можете напрямую использовать эти ограниченные переменные '$ firstname',' $ lastname' в своей таблице для отображения всех данных. –