Ik ben bezig met het pagineren van paignas. Ik wil uiteindelijk meerder pdfs in een php bestand hebben zodat ik doorheen kan bladeren

Het volgende probleem treedt op:

Warning: mysqli_fetch_assoc() expects parameter 1 to be mysqli_result, boolean given in C:\USB WebServer\root\Youtube11\index.php on line 27

Code die ik tot nog toe heb:

<?php

require_once('config.php');
$query = "SELECT * FROM pagination";
$result = mysqli_query($con, $query);

?>

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Pagination in PHP with Next and Previous</title>
    <link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css" rel="stylesheet">
<body>
	<table class="table table-striped">
		<tr>
			<td>User ID</td>
			<td>User Name</td>
			<td>User Email</td>
		</tr>
		<tr>
			<?php
			
			while($row = mysqli_fetch_assoc($result))
			{

			?>
			<td> <php? echo $row['ID'] ?></td>
			<td> <php? echo $row['Username'] ?> </td>
			<td> <php? echo $row['Email'] ?> </td>
		</tr>
			<?php

			}

			?>

</body>
</html>


Wie helpt mij?
Hoe moet ik die if schrijven. Help me AUB!

Moet in het selectstatement een WHERE opgenomen worden?

<?php
// Voer hier query uit 
$result = mysqli_query(.........);
if( $result === false) {
  // De query is niet gelukt, toon error
} else {
  // De query is gelukt. Voer vanaf hier de rest uit!
}
?>


Zoiets!
Maar ik vraag mij af of je de basis van PHP wel genoeg begrijpt. Misschien is dit wat je wilt best wel een hogere lat?
- Snap je hoe if-elseif-else werkt?
- Snap je de werking van functies?
Ja Arien is allemaal ook erg hoog, maar sinds ik ziek geworden ben (en afgekeurd, zittend in een rolstoel met PPMS) ben ik maar op internet gaan zoeken naar een besteding van mijn tijd. IK kwam uit op het digitaliseren van mijn studieboeken. Vandaar mijn vragen en gezeur!


[size=xsmall]Toevoeging op 15/05/2022 17:54:19:[/size]

Het geinige is dat ik op treinenweb had gekeken naar een foto van een tunnel. Het eerste waar ik naar keek of er een lift was. Had ik vroeger nooit gedaan! Maar off the record


[size=xsmall]Toevoeging op 15/05/2022 17:56:25:[/size]

Hoe if/else snap ik. Maar de andere functies zijn voor mij namen hoe ze precies werken, helaas nee dat weet ik niet. Daar is een site voor waar dat op eenvoudige wijze wordt uitgelegd?

[size=xsmall]Toevoeging op 15/05/2022 18:03:18:[/size]

<?php

require_once('config.php');
$query = "SELECT * FROM pagination";
$result = mysqli_query($con, $query);
echo $result;


// Voer hier query uit
$result = mysqli_query($con, $query);
if( $result === false)
{
	echo 'Het is niet gelukt';
} 
else
{
  echo'Het is gelukt';
}

?>

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Pagination in PHP with Next and Previous</title>
    <link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css" rel="stylesheet">
<body>
	<table class="table table-striped">
		<tr>
			<td>User ID</td>
			<td>User Name</td>
			<td>User Email</td>
		</tr>
		<tr>
			<?php
			
			while($row = mysqli_fetch_assoc($result))
			{
			print_r($row);
			?>
			<td> <?php echo $row['ID'] ?> </td>
			<td> <?php echo $row['Username'] ?> </td>
			<td> <?php echo $row['Email'] ?> </td>
		</tr>
			<?php

			}

			?>

</body>
</html>




Resultaat:

Het is niet gelukt
Warning: mysqli_fetch_assoc() expects parameter 1 to be mysqli_result, boolean given in C:\USB WebServer\root\Youtube11\index.php on line 42

De query lukt niet!
Dit moet lukken.

Wel even regels 3, 10, 13, 51, 52, 53 aanpassen

<?php

$con = mysqli_connect('localhost', 'demo', 'demodemo');

if ( !$con )
{
	die('Could not connect: ' . mysql_error());
}

mysqli_select_db($con, "demodemo");
echo '<pre>' . print_r( $con, true ) . '</pre>';

$query = "SELECT * FROM users";
$result = mysqli_query($con, $query);
echo '<pre>' . print_r( $result, true ) . '</pre>';

// Voer hier query uit

if( $result === false)
{
	echo 'Het is niet gelukt';
} else {
	echo'Het is gelukt';
}

?>

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<meta http-equiv="X-UA-Compatible" content="IE=edge">
	<meta name="viewport" content="width=device-width, initial-scale=1.0">
	<title>Pagination in PHP with Next and Previous</title>
	<link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css" rel="stylesheet">
<body>

	<table class="table table-striped">
		<tr>
			<td>User ID</td>
			<td>User Name</td>
			<td>User Email</td>
		</tr>
		<tr>
		<?php

		while($row = mysqli_fetch_assoc($result))
		{
			echo '<pre>' . print_r( $row, true ) . '</pre>';
			?>
			<td><?php echo $row['id'] ?></td>
			<td><?php echo $row['name'] ?> </td>
			<td><?php echo $row['password'] ?></td>
		</tr>
			<?php
		}
		?>
	</table>

</body>
</html>
@Ed:
Aan lijn 5 heb je niks omdat je al op lijn 10 de query uitvoert.

Maar let ook op de vervolgstappen.
Als de query gelukt is, dan voer je de rest bij voorkeur in die statement uit.

@Adoptive: Lijn 7 is fout. Je wilt de error van je connectie zien.

@all: Ik ga van de week een bijgewerkte versie van deze boilerplate online zetten. Mét SQL-file.
Maak dan van "proceduraal" meteen even procedureel. Want zo is er geen touw aan vast te knopen...
Ik maak het meteen of iets later Engelstalig, dus 'procedural' en 'Object-oriented' worden de termen.
Hallo,

De code heb ik aangepast en het werkt. Echter ik wil maar 5 regels zien ik krijg de hele tabel te zien terwijl ik wel heb aangegeven dat ik maar 5 regels wil zien!

De code tot zover

 
<?php

    require_once('config.php');

    if(isset($_GET['page']))
    {
        $page= $_GET['page'];
    }
    else
    {
        $page = 1;
    }

    $num_per_page = 05;
    $start_from = ($page-1)*05;

    $query = "SELECT * FROM pagination LIMIT $start_from, $num_per_page";
    $result = mysqli_query($con, $query);

?>


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Pagination in PHP with Next and Previous</title>
    <link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css" rel="stylesheet">
<body>

    <table class="table table-striped">
        <tr>
            <td>User ID</td>
            <td>User name</td>
            <td>Email</td>
        </tr>
        <tr>
        <?php

        while($row = mysqli_fetch_assoc($result))
        {
            //echo '<pre>' . print_r( $row, true ) . '</pre>';
            ?>
            <td><?php echo $row['ID'] ?></td>
            <td><?php echo $row['Username'] ?></td>
            <td><?php echo $row['Email'] ?></td>
        </tr>
            <?php
        }
        ?>
    </table>

    <?php
    
        $pr_query = "SELECT * FROM pagination";
        $pr_result = mysqli_query($con, $pr_query);
        $total_record = mysqli_num_rows($pr_result);

        $total_page = ceil($total_record / $num_per_page);

        if($page>1)
        {
            echo "<a href = 'index4.php?page=".($page-1)."' class= 'btn btn-danger'>Previous</a>";
        }
       
        for($i=1;$i<$total_page;$i++)
        {
            echo "<a href = 'index4.php?page=".$i."' class= 'btn btn-primary'>$i</a>";
        }

        if($i>$page)
        {
            echo "<a href = 'index4.php?page=".($page+1)."' class= 'btn btn-danger'>Next</a>";
        }
        
    
        
        
    ?>

</body>
</html> 


Wie kan me helpen?

Echo eens $query. Dan weet je wat er uitgevoerd wordt. Vooral ideaal bij dynamische queries met variabelen.
Hoi;
Dit komt er uit:

SELECT * FROM pagination LIMIT 0, 5


[size=xsmall]Toevoeging op 17/05/2022 16:36:58:[/size]

DE eerste keer krijg ik 5 recirds te zien aks ik dan op next duw krijg ik er weer 12.

Reageren