Avatar billede jariber Nybegynder
11. september 2007 - 14:35 Der er 7 kommentarer og
1 løsning

php array

jeg er igang med at lave et faktura system i flash hvor jeg henter data fra mysql. der er ingen problemer med at hente data fra php men når jeg bruger denne php kode ecoer den min array 2 gange oven i hinanden... hvorfor ?

jeg tror der er noget galt med linie 41 men jeg kan ikke finde ud af hvad..

koden er som følger:
<?PHP
//dette er faktura nummeret jeg vil finde
$quer=1516;

//her kontakter je min db
$link = mysql_connect('localhost', 'root' , '');//database contact
mysql_select_db("ribersreklame");//choose database
$result = mysql_query("SELECT * FROM faktura WHERE fak_nr = $quer" , $link);

//her gennemløber jeg min row det virker fint og jeg får alle mine data opstillet fint 1 gang

while($myrow =mysql_fetch_array($result)){
?> indlæg: <?PHP echo $myrow["id"];
?><br>faktura nummer: <?PHP echo $myrow["fak_nr"];?><br>
dato: <?PHP echo $myrow["dato"];?><br><br>
kunde nr: <?PHP echo $myrow["kunde_nr"];

//her tager jeg kunde nummeret for at kunne hente kunde info fra db kunder

$kundeid=$myrow["kunde_nr"];
$kundeinfo = mysql_query("SELECT * FROM kunder WHERE id = $kundeid" , $link);
?><br>


<?PHP
//hent kunde info fra db kunder
while($mykun =mysql_fetch_array($kundeinfo)){
        ?>navn:  <?PHP echo $mykun["navn"];?><br>
        firma navn:  <?PHP echo $mykun["firma_navn"];?><br>
        addresse:<br>  <?PHP echo $mykun["addresse"];?><br>
        tlf:  <?PHP echo $mykun["tlf"];?><br>
        <?PHP
    }

?><br>
vare nummer: <?PHP echo $myrow["vare"];?><br>
antal stk: <?PHP echo $myrow["antal"];?><br>

extra info: <?PHP echo $myrow["extra"];?><br><br><br><?PHP

//her kommer der pludseligt problemer for jeg ville gerne have at alle mine data blev sendt i en string til flash som skulle se sådan her ud:

//her printes hele arrayen 2gange

foreach($myrow as $fak_str)
{
   
    echo $fak_str . "|";
}
$antal = count($myrow);
echo "Arrayet indeholder: " . $antal . " elementer";
    }
?>

exempel (
//skal se sådan ud

$flash_string="1,1,2,3|vare,antal,pris,info";

//istedet får jeg

$flash_string="1,1,2,3|1,1,2,3|vare,antal,pris,info|vare,antal,pris,info";
)
Avatar billede terrak Nybegynder
11. september 2007 - 14:39 #1
http://dk.php.net/manual/en/function.mysql-fetch-array.php

Prøv at bruge:
while($mykun =mysql_fetch_array($kundeinfo,MYSQL_ASSOC)){
Avatar billede terrak Nybegynder
11. september 2007 - 14:41 #2
Det var selvfølgelig den anden while løkke den skal bruges på :-)

while($myrow =mysql_fetch_array($result,MYSQL_ASSOC)){
Avatar billede jariber Nybegynder
11. september 2007 - 14:45 #3
hvis man vil se hvad der bliver echoet kan man se det på dette link
http://www.ribers-reklame.dk/test1.php
Avatar billede jariber Nybegynder
11. september 2007 - 14:55 #4
det var lige hvad jeg skulle bruge meget fint og hurtigt svar alletiders
Avatar billede terrak Nybegynder
11. september 2007 - 14:58 #5
Det var da godt :-)

En anden gang så kan du bruge
print_r($array);
til at se indholdet af et array. I dit tilfælde ville du nemlig se at arrayet indeholdte samme data to gange, bare med forskellige nøgler - numerisk og associativt.
Avatar billede jariber Nybegynder
11. september 2007 - 15:02 #6
tak hvordan giver jeg point
Avatar billede terrak Nybegynder
11. september 2007 - 15:05 #7
Det er gjort - og tak for point.
Avatar billede jariber Nybegynder
11. september 2007 - 15:07 #8
velbekomme
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
Computerworld tilbyder specialiserede kurser i database-management

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