Avatar billede t-rex Nybegynder
09. januar 2005 - 20:35 Der er 7 kommentarer og
1 løsning

mysql problem

nogle der kan svære på hvad fejlen er her.

den siger :


mysql_fetch_array(): supplied argument is not a valid MySQL result resource



    $res = mysql_query("SELECT * FROM vare WHERE varenr = $vare");
------>    while($row = mysql_fetch_array($res)) <----------
        {
        echo"
        <table width=100% border=0 cellspacing=0 cellpadding=0 class=text>
          <tr>
        <td width=15%>".$row['varenr']."</td>
        <td width=65%>".$row['varenavn']."</td>
          <td>".$row['salg']."</td>
          </tr>
        </table>";
        };
Avatar billede t-rex Nybegynder
09. januar 2005 - 20:37 #1
og $vare kommer her fra

    $ordre = mysql_query("SELECT * FROM ordre where id = '$_GET[id]'");
    while($row_ordre = mysql_fetch_array($ordre))
        {
        $vare = str_replace(",", "<br>", $row_ordre['vare']);
        };
Avatar billede jakoba Nybegynder
09. januar 2005 - 20:59 #2
Den fejl betyder at din sql query lige før gik galt.

så sæt en  or die  på for at hitte ud af HVAD der går galt med den

    $res = mysql_query("SELECT * FROM vare WHERE varenr = $vare")
            or die("fejl i query2:<br>" .mysql_error());

jeg fatter forreten ikke den der str_replace. du siger  varenr = $vare    og det tyder på at det der skal sammenlignes er tal. men i str_replace udskifter du kommaer med '<br>'.  end streng der står <br> i er ikke et ordentligt tal.

mvh JakobA
Avatar billede t-rex Nybegynder
09. januar 2005 - 22:31 #3
den udskriver denne fejl:

0901fejl i query2:
You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near '
0002
0901
0901' at line 1

det med str_replace kan jeg godt se en fejl i. men hvad kan jeg skrive i stedet for så det kommer til at virke.
Avatar billede hmortensen Nybegynder
10. januar 2005 - 00:09 #4
Så vidt jeg kan se, har du et kommasepareret resultat.

Prøv at fjerne din str_replace, og rette den her:
$res = mysql_query("SELECT * FROM vare WHERE varenr = $vare");
til
$res = mysql_query("SELECT * FROM vare WHERE varenr IN (".$vare.")");
Avatar billede t-rex Nybegynder
10. januar 2005 - 06:40 #5
så kommer denne fejl :

Parse error: parse error, unexpected T_LOGICAL_OR in line 162

---->    $res = mysql_query("SELECT * FROM vare WHERE varenr IN '.$vare.'"); or die("fejl i query2:<br>" .mysql_error());
    while($row = mysql_fetch_array($res))
        {
        echo"
        <table width=100% border=0 cellspacing=0 cellpadding=0 class=text>
          <tr>
        <td width=15%>".$row['varenr']."</td>
        <td width=65%>".$row['varenavn']."</td>
          <td>".$row['salg']."</td>
          </tr>
        </table>";
        };
Avatar billede t-rex Nybegynder
10. januar 2005 - 09:55 #6
flot fjernet lige ; men den kommer stadig med denne fejl :

You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near ' 0002, 0901, 0901)' at line 1
Avatar billede hmortensen Nybegynder
10. januar 2005 - 11:39 #7
Du har heller ik skrevet det på den måde jeg har. Der skal () $vare
Avatar billede t-rex Nybegynder
11. januar 2005 - 19:01 #8
har løst det på en anden måde.. har oprettet en ny tabel. så lukker
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