/ Forside / Teknologi / Udvikling / SQL / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
SQL
#NavnPoint
pmbruun 1704
niller 962
fehaar 730
Interkril.. 701
ellebye 510
pawel 510
rpje 405
pete 350
gibson 320
10  smorch 260
Resource id #
Fra : Britt Malka


Dato : 14-04-04 19:45

Goddag

Så er jeg stødt på problemet igen.

Når jeg kører min query, får jeg resultatet "resource id #3".

Jeg ved godt, at problemet kan løses ved at bruge mysql_fetch_array og
så en for-løkke, men det bliver lidt klodset, da jeg skal bruge koden
mange steder i et script.

Min kode lige nu ser sådan her ud:

<? $ialtpsyken1 = mysql_query("select pris from varer where
vareID='$psyken1'"); print $ialtpsyken1*$psyken1; ?>

Jeg har prøvet et alternativ:

$pris = mysql_query("select pris from varer");
while ($ialt = mysql_fetch_array($pris)){
print " osv.
men når jeg skal udskrive: ".$ialt['pris']."

Så bliver prisen hver gang den samme, uanset vare.

Så jeg er lidt kørt fast lige nu.

Nogen idéer?
--
Britt Malka
Tilmeld dig nyhedsbrev og få gratis ebog om html - http://www.tips-og-tricks.com/ebog.html
(Svar ikke til denne e-mail-adresse. Mail slettes på serveren p.g.a. spam)

 
 
Kristian Thy (14-04-2004)
Kommentar
Fra : Kristian Thy


Dato : 14-04-04 19:57

Britt Malka uttered:
> Nogen idéer?

Ja, prøv i php-gruppen :)

\\kristian
--
Wine improves with age. The older I get, the better I like it.

Britt Malka (14-04-2004)
Kommentar
Fra : Britt Malka


Dato : 14-04-04 19:59

On 14 Apr 2004 18:57:11 GMT, Kristian Thy <thy@it.edu> wrote:

>
>Ja, prøv i php-gruppen :)

Hmm.... det overvejede jeg først, men så tænkte jeg, at problemet
vedrørte MySQL, så det måtte være her.

Nå, jeg prøver der. Tak.
--
Britt Malka
Tilmeld dig nyhedsbrev og få gratis ebog om html - http://www.tips-og-tricks.com/ebog.html
(Svar ikke til denne e-mail-adresse. Mail slettes på serveren p.g.a. spam)

JMo. (14-04-2004)
Kommentar
Fra : JMo.


Dato : 14-04-04 20:00

Britt Malka wrote:

> <? $ialtpsyken1 = mysql_query("select pris from varer where
> vareID='$psyken1'"); print $ialtpsyken1*$psyken1; ?>
>
> Jeg har prøvet et alternativ:
>
> $pris = mysql_query("select pris from varer");

Her glemmer du vidst WHERE delen (where vareID='$psyken1'")
- dvs. du henter alle priser...

> while ($ialt = mysql_fetch_array($pris)){
> print " osv.
> men når jeg skal udskrive: ".$ialt['pris']."
>
> Så bliver prisen hver gang den samme, uanset vare.

....og her henter du den første række af alle dine priser


Britt Malka (14-04-2004)
Kommentar
Fra : Britt Malka


Dato : 14-04-04 20:16

On Wed, 14 Apr 2004 19:00:10 +0000 (UTC), "JMo."
<ns_sf012@mohr.cx.invalid> wrote:

>> $pris = mysql_query("select pris from varer");
>
>Her glemmer du vidst WHERE delen (where vareID='$psyken1'")
>- dvs. du henter alle priser...

Ja, for jeg skal ikke kun bruge $psyken1, men også $etc1year og en
masse andre.

>...og her henter du den første række af alle dine priser

Ja
--
Britt Malka
Tilmeld dig nyhedsbrev og få gratis ebog om html - http://www.tips-og-tricks.com/ebog.html
(Svar ikke til denne e-mail-adresse. Mail slettes på serveren p.g.a. spam)

JMo. (14-04-2004)
Kommentar
Fra : JMo.


Dato : 14-04-04 21:00

Britt Malka wrote:

> Ja, for jeg skal ikke kun bruge $psyken1, men også $etc1year og en
> masse andre.

Ohh.. Jamen så skal vi nok en tur over i PHP-gruppen

Du kan evt. lege lidt med funktioner. F.eks. noget i retning af

//UTESTET!!

FUNCTION HentPris($VareID) {
        //Vi definerer en funktion der kræver et input - $VareID
   $VareID = addslashes($VareID);
       //Escaper de slemme tegn
   $sql = "SELECT pris FROM varer WHERE VareID = '$VareID' LIMIT 1";
       // sql'en der henter prisen på varen. Vi ønsker kun en række
   $result = mysql_query($sql)
       // fyrer kaldet af sted mod DB'en
   if (mysql_num_rows == 1) {
       //Tjekker at der var en række
       $row = mysql_fetch_assoc($result);
       //Henter den første række
       RETURN $row["pris"];
       //Og returnerer den ønskede værdi
   } else {
       RETURN False;
       // Vi fandt ikke nogen pris - funktionen returnerer falsk.
   }
} //Slut på funktionen

Hvis varen med VareID = 2 har prisen 25 vil:

echo HentPris(2)

give resultatet

25

FUT .php

JMo. (14-04-2004)
Kommentar
Fra : JMo.


Dato : 14-04-04 21:03

JMo. wrote:

> $result = mysql_query($sql)

Her mangler så lige et ; til at afslutte linien.

Eller endnu bedre: Noget fejlhåndtering, og så et ;

(den helt simple:
$result = mysql_query($sql) or die(mysql_error());
- men den bør altså kun bruges som en hurtig test-noget)


Britt Malka (16-04-2004)
Kommentar
Fra : Britt Malka


Dato : 16-04-04 10:55

On Wed, 14 Apr 2004 20:00:11 +0000 (UTC), "JMo."
<ns_sf012@mohr.cx.invalid> wrote:

>//UTESTET!!
>
>FUNCTION HentPris($VareID) {

Osv.

Tak for dit bud. Desværre har jeg ikke haft tid at tjekke det endnu,
men eftersom der er gået et par dage, ville jeg lige melde tilbage.

Det ser fornuftigt nok ud i hvert fald
--
Britt Malka
Tilmeld dig nyhedsbrev og få gratis ebog om html - http://www.tips-og-tricks.com/ebog.html
(Svar ikke til denne e-mail-adresse. Mail slettes på serveren p.g.a. spam)

Søg
Reklame
Statistik
Spørgsmål : 177472
Tips : 31964
Nyheder : 719565
Indlæg : 6408309
Brugere : 218881

Månedens bedste
Årets bedste
Sidste års bedste