Avatar billede tobrukDk Novice
09. marts 2012 - 20:45 Der er 48 kommentarer og
1 løsning

mysql_num_rows() & mysql_fetch_array() Fejl 2 linje! / problemer!

Hej


det er sådan at jeg sidde lige nu med en hjemmeside hvor der skulle komme 2 links frem men de gider ikke rigtigt at gøre det som jeg gerne ville have .. det er sådan at man ligesom kommer ind på "hovede side (som hedder; admin_bruger_infomationindhold.php)" til de 2 links hvor der skal blive link videre til en anden side hvor man kan se eller opdater infomation der fra og via over.. :)


jeg har skrevet lidt med en fra eksperten privat og vi har snakke frem og tilbage og det skal være sådan at man klik på link via menu så kommer man over på "admin_bruger_infomationindhold.php" der efter skulle der gerne komme 2 boxe frem med 2 links til 1 "under side" til at kun slet eller ret lign.."


Ham som jeg har skrevet til mig privat har forslag mig det her

<?php
                    if (!empty($_GET)) {
                        $id = $_GET['id'];
                        $result = mysql_query("SELECT * FROM  `infomation` ORDER BY  `infomation`.`$id` DESC LIMIT 0 , 30");
                        $num_rows = mysql_num_rows($result);
                        if ($num_rows == 0) {
                                echo "Der ingen Bruger lige nu";   
                        }       
                        while($row = mysql_fetch_array($result))
                        {
                ?>
                          <tr>
                            <td><a href="admin_bruger_underside.php?id=<?php echo $row['id'];?>"><?php echo $row['title'];?></a></td>
                            <td><a href="admin_bruger_underside.php?id=<?php echo $row['id'];?>"><?php echo $row['title'];?></a></td>
                          </tr>
                <?php
                        }
                    }
                ?>


og det her har jeg selv skrevet privat .


<?php
                    $id = $_POST['id'];
                    $result = mysql_query("SELECT * FROM  `infomation` ORDER BY  `infomation`.`$id` DESC LIMIT 0 , 30");
                    $num_rows = mysql_num_rows($result);
                    if ($num_rows == 0) {
                            echo "Der ingen Bruger lige nu";   
                    }       
                    while($row = mysql_fetch_array($result))
                    {
                ?>
                <td><a href="admin_bruger_infoupdate.php?id=<?php echo $row['id'];?>"><?php echo $row['title'];?></a></td>
                <td><a href="admin_bruger_nyhederupdate.php?id=<?php echo $row['id'];?>"><?php echo $row['title'];?></a></td>
              </tr>
                <?php
                    }
                ?>




Håber du kan hjælp mig frem til det rigtig svar :)
Avatar billede tobrukDk Novice
09. marts 2012 - 20:49 #1
Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\Ny\admin_bruger_infomationindhold.php on line 32
Der ingen Bruger lige nu
Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\Ny\admin_bruger_infomationindhold.php on line 36
Avatar billede erikjacobsen Ekspert
09. marts 2012 - 20:53 #2
Jeg her på fornemmelsen at du ikke mener det du skriver i SQL-sætningen. Be' lige MySql fortælle dig om der ikke skulle være fejl:

  $result = mysql_query("SELECT * FROM  `infomation` ORDER BY  `infomation`.`$id` DESC LIMIT 0 , 30") or die(mysql_error());

og derefter gerne forklare hvad $id skal gøre, og hvad den indeholder.
Avatar billede tobrukDk Novice
09. marts 2012 - 20:57 #3
#2 forstår ikke lige helt hvad du mener med det ???
Avatar billede olebole Juniormester
09. marts 2012 - 21:07 #4
<ole>

Erik mener, du skal skrive:

  $result = mysql_query("SELECT * FROM  `infomation` ORDER BY  `infomation`.`$id` DESC LIMIT 0 , 30") or die(mysql_error());

- og det skal du vænne dig til at prøve, når der sker noget, du ikke forstår.

/mvh
</bole>
Avatar billede olebole Juniormester
09. marts 2012 - 21:08 #5
Ups ... al den ny teknologi!  :D

  $result = mysql_query("SELECT * FROM  `infomation` ORDER BY  `infomation`.`$id` DESC LIMIT 0 , 30") or die(mysql_error());
Avatar billede tobrukDk Novice
09. marts 2012 - 21:11 #6
Hej OleBole.. Jeg får stadig sammen fejl :( og der kommer intet nyt frem på nogle måde :(
Avatar billede erikjacobsen Ekspert
09. marts 2012 - 21:15 #7
Hvordan ser din kode ud nu?
Avatar billede tobrukDk Novice
09. marts 2012 - 21:19 #8

<?php include("include/database/db.php");?>
<?
session_start();

if(isset($_SESSION["logged_in"]) && $_SESSION["logged_in"] == 1)
{
  $userQuery = mysql_query("SELECT * FROM brugere WHERE id='$_SESSION[user_id]'");
  $userArray = mysql_fetch_array($userQuery);
?>
<!DOCTYPE html>
<html lang="en">
<head>
<?php
    include("include/admin/header.php");
?>
</head>
<body>
<?php
    include("include/admin/logo.php");
?>
<?php
include ("include/admin/menu.php");
?>
<div id="wrapper">
    <div id="contentadmin">
            <h1>Nyheder & Infomation Updater</h1>
            <table width="970" border="0px">
              <tr>
              </tr>
             
                <?php
                    $result = mysql_query("SELECT * FROM  `infomation`");
                    $num_rows = mysql_num_rows($result);
                    if ($num_rows == 0) {
                            echo "Der ingen Bruger lige nu";   
                    }       
                    while($row = mysql_fetch_array($result))
                    {
                ?>
                <td><a href="admin_bruger_underside.php?id=<?php echo $row['id'];?>"><?php echo $row['title'];?></a></td>
                <?php
                    }
                ?>
    </table>
           
            <?php
               
            ?>
           
           
   
         
        </div>
<?php
    include("include/footer.php");
?>
</div>
</body>
</html>
<?php
}
else
{
  header("Location: index.php");
    exit();
}
?>

det er hele siden hvor koden er :D
Avatar billede erikjacobsen Ekspert
09. marts 2012 - 21:20 #9
Prøv at læse hvad vi skriver.
Avatar billede erikjacobsen Ekspert
09. marts 2012 - 21:24 #10
Men det er jo ikke den samme kode, som du viste først... Hvorfor?
Avatar billede tobrukDk Novice
09. marts 2012 - 21:27 #11

<?php include("include/database/db.php");?>
<?
session_start();

if(isset($_SESSION["logged_in"]) && $_SESSION["logged_in"] == 1)
{
  $userQuery = mysql_query("SELECT * FROM brugere WHERE id='$_SESSION[user_id]'");
  $userArray = mysql_fetch_array($userQuery);
?>
<!DOCTYPE html>
<html lang="en">
<head>
<?php
    include("include/admin/header.php");
?>
</head>
<body>
<?php
    include("include/admin/logo.php");
?>
<?php
include ("include/admin/menu.php");
?>
<div id="wrapper">
    <div id="contentadmin">
            <h1>Nyheder & Infomation Updater</h1>
            <table width="970" border="0px">
              <tr>
              </tr>
             
                <?php
                    $result = mysql_query("SELECT * FROM  `infomation` ORDER BY  `infomation`.`$id` DESC LIMIT 0 , 30") or die(mysql_error());
                    $num_rows = mysql_num_rows($result);
                    if ($num_rows == 0) {
                            echo "Der ingen Bruger lige nu";   
                    }       
                    while($row = mysql_fetch_array($result))
                    {
                ?>
                <td><a href="admin_bruger_underside.php?id=<?php echo $row['id'];?>"><?php echo $row['title'];?></a></td>
                <?php
                    }
                ?>
    </table>
           
           
   
         
        </div>
<?php
    include("include/footer.php");
?>
</div>
</body>
</html>
<?php
}
else
{
  header("Location: index.php");
    exit();
}
?>


sådan :D
Avatar billede NielsErikP Mester
09. marts 2012 - 21:34 #12
Hej...

@tobrukDK: I #1 siger fejlen jo at det forventes at $result skal være enten true eller false ..!
Avatar billede tobrukDk Novice
09. marts 2012 - 21:35 #13
ja det ved jeg godt #12 :) men jeg har prøve alt muligt både frem og tilbage og det virker overhovedet ikke på nogle måde :)
Avatar billede tobrukDk Novice
09. marts 2012 - 21:43 #14
loooooooll pinlig Nyhede!!!!... var i den forkert FILE!!!!... :O
Avatar billede tobrukDk Novice
09. marts 2012 - 21:47 #15

<?php
                $id = $_GET['id'];
                    $result = mysql_query("SELECT * FROM  `infomation` ORDER BY  `infomation`.`$id` DESC LIMIT 0 , 30") or die(mysql_error());
                    $num_rows = mysql_num_rows($result);
                    if ($num_rows == 0) {
                            echo "Der ingen Bruger lige nu";   
                    }       
                    while($row = mysql_fetch_array($result))
                    {
                ?>
                <td><a href="admin_bruger_underside.php?id=<?php echo $row['id'];?>"><?php echo $row['title'];?></a></td>
                <?php
                    }
                ?>


er den nu men den kommer frem og siger

Notice: Undefined index: id in C:\xampp\htdocs\Ny\admin_bruger_infomationindhold.php on line 32
Unknown column 'infomation.' in 'order clause'
Avatar billede erikjacobsen Ekspert
09. marts 2012 - 21:52 #16
Og når vi er kommet så langt, så er det jeg vil spørge: Hvad indeholder $id?
Avatar billede NielsErikP Mester
09. marts 2012 - 21:55 #17
Hej...

@tobrukDK: øh... mysql_num_rows giver vel antallet af returnerede rækker eller false  som resultat!!

Notice: Undefined index: id in C:\xampp\htdocs\Ny\admin_bruger_infomationindhold.php on line 32
Unknown column 'infomation.' in 'order clause'


Har du en kolonne der hedder 'information' i din database??
Avatar billede kjeldsted Novice
09. marts 2012 - 21:57 #18
#12:
Ikke korrekt. Den skriver at den forventer en resource men i stedet får en boolean ;)

#15:
Det den undre sig over er det samme som jeg (og vist også de andre her inde) undre mig over. Hvorfor du vil sortere efter infomation.$id.
$id er jo en PHP variabel, så den vil sortere efter det felt der har samme navn som indholdet af $id.
Mener du ikke 'information.id' i stedet?
Avatar billede erikjacobsen Ekspert
09. marts 2012 - 21:58 #19
#17: mysql_num_rows afleverer aldrig false. Du behøver ikke gætte dig frem, det står her: http://php.net/mysql_num_rows
Avatar billede NielsErikP Mester
09. marts 2012 - 21:59 #20
Hej...

Hvad sker der, hvis du fjerner ' ' omkring '$id' i denne linje..:

$result = mysql_query("SELECT * FROM  `infomation` ORDER BY  `infomation`.`$id` DESC LIMIT 0 , 30") or die(mysql_error());
Avatar billede tobrukDk Novice
09. marts 2012 - 22:00 #21

<?php
                    $result = mysql_query("SELECT * FROM  `infomation`") or die(mysql_error());
                    $num_rows = mysql_num_rows($result);
                    if ($num_rows == 0) {
                            echo "Der ingen Bruger lige nu";   
                    }       
                    while($row = mysql_fetch_array($result))
                    {
                ?>
                <td><a href="admin_bruger_underside.php?id=<?php echo $row['id'];?>"><?php echo $row['title'];?></a></td>
                <?php
                    }
                ?>


er jeg kommet frem til !! :D da jeg skal bruge $_GET['id']; på næste side altså admin_bruger_underside.php
Avatar billede kjeldsted Novice
09. marts 2012 - 22:03 #22
Næste spørgsmål er så om det er nødvendigt at hente AL information fra infomation???

#20: Vil give præcis samme resultat. Hvis du kigger neders i #15 kan du se at $id indeholder absolut intet ;) Dér er fejlen!
Avatar billede NielsErikP Mester
09. marts 2012 - 22:04 #23
Hej...

#19:  åh.. jeg gætter mig såmen ikke frem... jeg prøver konstruktivt at hjælpe tobrukDK ... Men det er ok med din holdning :-)
Avatar billede erikjacobsen Ekspert
09. marts 2012 - 22:05 #24
#21: Nå, men hvis du ikke vil svare på hvad $id indeholder, så må jeg jo gætte: Det indeholder et tal, et id for en række. Og hvis det gør det, så er det jo helt forkert at bruge det et sted hvor man forventer et navn på et felt (kolonne om du vil) - eller med lidt god vilje et nummer på en kolonne.

Så: hvad er det du vil sortere efter, når du nu bruger ORDER BY ??
Avatar billede erikjacobsen Ekspert
09. marts 2012 - 22:05 #25
#23: "...giver vel antallet af returnerede rækker eller false "  er jo gætværk, og næppe nogen hjælp, når det faktuelt er forkert.
Avatar billede NielsErikP Mester
09. marts 2012 - 22:07 #26
Hej...

#22: Okay, jeg trækker snuden til mig igen... og lader Eksperterne komme til...
Avatar billede tobrukDk Novice
09. marts 2012 - 22:08 #27
#22 && #23 Sorry for at jeg lave nogle fejl og undskyld gerne og jeg vil gerne give noget for det ??
Avatar billede kjeldsted Novice
09. marts 2012 - 22:08 #28
#24:
Så vidt jeg kan se ud fra de forskellige fejl indeholder $id ingen ting. Den brokker sig jo over et undefined index $id.... Sååå, tror bare at det $ skal væk.
Avatar billede erikjacobsen Ekspert
09. marts 2012 - 22:11 #29
#27: har du fået løst dit problem?
Avatar billede kjeldsted Novice
09. marts 2012 - 22:11 #30
#27: Jeg forstår ikke. Undskylder du til mig fordi du har lavet en fejl i din kode? Hvis det var det du mente så trækker du bare den undskyldning tilbage ;)
Avatar billede NielsErikP Mester
09. marts 2012 - 22:12 #31
Hej...

#25: Nej.. du!!

Return Values

The number of rows in a result set on success or FALSE on failure.
Avatar billede NielsErikP Mester
09. marts 2012 - 22:16 #32
Hej...

@erikjacobsen: Men ro på nu... Hvem ved måske jeg får brug for din hjælp en anden dag... :-)
Avatar billede erikjacobsen Ekspert
09. marts 2012 - 22:16 #33
#31: hehe, jo, du har ret. Hvis man læser langt nok ned. Men der stod

  int mysql_num_rows ( resource $result )

og der plejer da vist at skulle stå

  mixed mysql_num_rows ( resource $result )

hvis den blander typerne i svaret. I øvrigt farligt for 0==false, men 0!==false. I stand corrected!
Avatar billede erikjacobsen Ekspert
09. marts 2012 - 22:20 #34
#33: I stand een gang til corrected. Ved "strpos" står også "int", men ved "max" står der faktisk "mixed". Det er nu da ret stor betydning hvad type, der returneres. Det er something rodet...
Avatar billede erikjacobsen Ekspert
09. marts 2012 - 22:21 #35
(#34: Iøvrigt uden betydning for spørgerens problem, hvad det så end er han vil)
Avatar billede NielsErikP Mester
09. marts 2012 - 23:56 #36
Hej...

#33: åh... det var nu ik fordi jeg vil rette på dig... har jeg nok ikke mandat til... Er rimelig ny i php sammenhæng.. Men vil frygteligt lære... men men jeg kunne da ikke forstå, hvis mine øjne havde bedraget mig :-) :-)
Avatar billede erikjacobsen Ekspert
10. marts 2012 - 11:20 #37
#36: Du skal endelig korrekse mig, når jeg tager fejl. Det er en kedelig dag, hvis man ikke lærer noget nyt.
Avatar billede NielsErikP Mester
10. marts 2012 - 11:35 #38
Hej...

Jamen så kan du satme tro du skal få på puklen, når det er "Smiler".
NEMLIG... Elsker selv at lære, så den kender jeg godt.
Avatar billede tobrukDk Novice
10. marts 2012 - 12:04 #39
Ole og erik i hjælp mig godt på vej og jeg ikke begge ikke ville have noget for det ??.. .
Avatar billede erikjacobsen Ekspert
10. marts 2012 - 12:05 #40
Nej tak. Hvad var problemet og løsningen?
Avatar billede NielsErikP Mester
10. marts 2012 - 12:23 #41
Hej...

he he...

@jkeldsted: jamen så må vi to sætte os tilbage i sofa'en og nyde dampen fra den kolde kaffe.. :-) De siger jo også det er den man bliver skøn af :-)... hmm , men nok sjældent rig.
Avatar billede tobrukDk Novice
10. marts 2012 - 13:13 #42
Problem var at jeg skulle kunne hente id og tekst nede og jeg skulle ikke have brugt $_GET .. så derfor ;) men den er klare nu

#41 vil du også have noget ??
Avatar billede olebole Juniormester
10. marts 2012 - 14:09 #43
<ole>

#41: Mange, lange tråde på Eksperten har givet anledning til at afprøve denne tese. Jeg kan meddele, at den ikke holder vand - kun en anelse grums!

Derimod kan jeg varmt anbefale kølig hvidvin - alternativt lunken islay single malt med et diminutivt skvæt kildevand. I passende mængder gør disse fluida kvinder overordentligt smukke  *-\

/mvh
</bole>
Avatar billede tobrukDk Novice
10. marts 2012 - 15:22 #44
#43 tror jeg skal sige det til min mor ;)
Avatar billede tobrukDk Novice
10. marts 2012 - 18:58 #45
nogen som skulle have noget for hjælpen ??
Avatar billede NielsErikP Mester
10. marts 2012 - 23:12 #46
Hej...

#42:

Neeej... jeg må nok hellere lade dig selv beholde dem tobrukDK ... Jeg har jo sådan set ikke udrettet noget for dig.. forsøgte kun at hjælpe, men fik jo at vide jjeg skulle Tie... stille .. "smiler" ... Da bare rart du fik løst dit problem..

#43: He.. he.. NEj tænkte jeg squ nok...Så er det godt jeg har holdt mig fra at prøve kold kaffe...
Ja... vil jeg gerne tro, men nu er jeg jo afholds mand..... undtagen rundt om højtiderne..... og hvor lange trådene end er her på eksperten, bliver de jo aldrig højtider.... og kvinder er jo altid smukke... også udenfor højtiderne... ihvertfald dem jeg omgiver mig med "Smiler"
Avatar billede olebole Juniormester
11. marts 2012 - 00:18 #47
Intet er så vigtigt, som at være mådeholdende! Og det gælder ikke mindst med mådeholdet  *D
Avatar billede NielsErikP Mester
11. marts 2012 - 00:37 #48
Hej...

Hørt :-)
Avatar billede tobrukDk Novice
11. marts 2012 - 14:13 #49
Hej

Jeg lukker den selv .. ;)
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
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

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