Avatar billede tobrukDk Novice
20. juli 2012 - 16:26 Der er 8 kommentarer og
1 løsning

$num_rows - mysqli

hej


det er sådan at jeg skal have arbejde på at den kommer frem og siger  f.eks.. "Der er intet forum indhold på siden prøve igen"


<?php
        if ($stmt = $mysqli->prepare('SELECT `title`, `id_forum` FROM `forum_opret` ORDER BY `forum_opret`.`id_forum` DESC LIMIT 0 , 30')) {
        $stmt->execute();
        $stmt->bind_result($title, $id_forum);
        while ($stmt->fetch())
        {
        ?>
        <td><?php echo $title;?></td>
        <td><a href="http://www.xxx.dk/forum-indhold/<?php echo $id_forum;?>/">Læse her</a></td>
        <?php
        }
        $stmt->close();
        } else {
            echo 'Der opstod en fejl i erklæringen: ' . $mysqli->error;
        }
        ?>


hvordan skal jeg bygge det her?,, jeg synes jeg har prøve det mange stede ny,

jeg har fået lidt hjælpe af olebole privat.


<?php
    if ($stmt = $mysqli->prepare('SELECT `title`, `id_forum` FROM `forum_opret`')) {
        $stmt->execute();
        if ($stmt->num_rows>0) {
            $stmt->bind_result($title, $id_forum);
            while ($stmt->fetch())
            {
            ?>
                <td><?php echo $title;?></td>
                <td><a href="http://www.xxx.dk/ (...) echo $id_forum;?>/">Læse her</a></td>
            <?php
            }
        } else {
            echo 'Tumpe! Der er ikke noget ... doooohhhhhh!  :D';
        }
        $stmt->close();
    } else {
        echo 'Der opstod en fejl i erklæringen: ' . $mysqli->error;
    }
?>

der kommer den frem og siger "Tumpe! Der er ikke noget ... doooohhhhhh!  :D" men hvis jeg gøre sådan her


if ($stmt->num_rows>=0) {

så gider den ikke komme frem og sige fejl til mig altså der intet er på siden,

men gøre jeg sådan her

if ($stmt->num_rows>0) {

så kommer den frem og siger det men er der noget i forum så kommer der intet frem hvis det er.. :)

Jeg kan godt nok ikke se hvad der er galt , og jeg synes bare at jeg fået hjælp af olebole., men jeg vil lige høre om der er nogle andre som måske kan hjælp mig :)


Håber du kan hjælp mig og tak hvis du gider!
Avatar billede DeeDawg Nybegynder
20. juli 2012 - 16:48 #1
Har allerede svaret på dette spørgsmål 1 gang i dag. Jeg vil derfor lede din opmærksomhed hen på denne tråd. :)
Avatar billede tobrukDk Novice
20. juli 2012 - 16:53 #2
Okay, ;) tak


if ($stmt = $mysqli->prepare('SELECT `title`, `id_forum` FROM `forum_opret` ORDER BY `forum_opret`.`id_forum` DESC LIMIT 0 , 30')) {
        $checkLogin->execute();
        $checkLogin->store_result();
        print $checkLogin->num_rows;
        $stmt->bind_result($title, $id_forum);
        while ($stmt->fetch())
        {


Hvis jeg gøre sådan så kommer der 0 :)

så skal jeg vil bare sig


if ($stmt->num_rows=0) {


eller hvordan skal jeg gøre det?
Avatar billede tobrukDk Novice
20. juli 2012 - 16:58 #3

<?php
        if ($stmt = $mysqli->prepare('SELECT `title`, `id_forum` FROM `forum_opret` ORDER BY `forum_opret`.`id_forum` DESC LIMIT 0 , 30')) {
        $stmt->execute();
        $stmt->store_result();
        if ($stmt->num_rows>=0) {
            $stmt->bind_result($title, $id_forum);
            while ($stmt->fetch())
            {
echo "hej";
              }
            } else {
                echo 'Tumpe! Der er ikke noget ... doooohhhhhh!  :D';
            }
            $stmt->close();
        } else {
            echo 'Der opstod en fejl i erklæringen: ' . $mysqli->error;
        }
?>


Den viser bare en tom box hvis man kan sig det sådan
Avatar billede DeeDawg Nybegynder
20. juli 2012 - 17:43 #4
if ($stmt->num_rows >= 0) { }

Eftersom num_rows aldrig vil indeholde et tal under 0, er denne if sætning ostemad med ost på og direkte useless. Derfor prøver dit script på nuværende tidspunkt at hente data, uanset om det findes eller ej.

Din if sætning bør se således ud:

if ($stmt->num_rows > 0) { }
Avatar billede tobrukDk Novice
20. juli 2012 - 17:56 #5
skulle bare gøre sådan her


if ($stmt->num_rows >= 1) {
Avatar billede DeeDawg Nybegynder
20. juli 2012 - 17:59 #6
if ($stmt->num_rows > 0) { }

og

if ($stmt->num_rows >= 1) { }

er der jo heller ingen forskel på. :)
Avatar billede tobrukDk Novice
20. juli 2012 - 18:16 #7
nemlig, men den fuck helt op hvis det er 0 men hvis det er 1 så virker det fint :O jeg forstår det heller ikke :(
Avatar billede tobrukDk Novice
20. juli 2012 - 19:36 #8
Jeg lukker den bare selv, ! men tak for hjælp hvis du ha noget så kontakt mig PM! :)
Avatar billede DeeDawg Nybegynder
20. juli 2012 - 23:22 #9
if ($stmt->num_rows > 0) { }

Det fungerer. Der har aldrig været et problem med dette, men du oplevede problemer fordi du ikke gemte udtrækket og prøvede dig frem med >= istedet.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester