Avatar billede starf Nybegynder
28. januar 2015 - 22:44 Der er 4 kommentarer

mysql ned i array

Hvordan vil man typisk lave følgende query om til array?

$result = mysql_query("SELECT firma, cvr, tlf1, mobil1, adresse_vej, adresse_by, adresse_postnr FROM kunde.kunder where status = 1;");
while($row = mysql_fetch_array($result))
  {
echo $row['firma'];
    echo " " . $row['adresse_vej']; 
   
    echo " ". $row['adresse_by'];

    echo " ". $row['adresse_postnr'];
    echo "<br>";
  }

jeg har brug for at kunne få et array hvor jeg kan outputte de forskelige elementer som jeg har brug for dem. Jeg vil tro det kaldes multidirectional array?
Avatar billede starf Nybegynder
28. januar 2015 - 23:04 #1
ok det var let nok. $data[] = $row;

hvordan ser et simpelt for each loop så ud der printer alt indholdet på hver linie?
Avatar billede starf Nybegynder
28. januar 2015 - 23:22 #2
jeg forklare mig enlig ret dårligt. det jeg søger er så jeg kan tilgå outputtet hved hver sit navn. Jeg har brug for at køre en funktion på hver output, som henter cordinater via google maps.

test1 = getCoordinates('adresse...');

nu har jeg alle adresserne i mit array, jeg går ud fra der skal noget for while loop ind på en eller anden måde? men kan ikke lige gennemskue hvordan man får den til at lave et kald per adresse?
Avatar billede moddi100 Seniormester
29. januar 2015 - 00:13 #3
// Send forespørgsel til DB
$result = mysql_query("SELECT firma, cvr, tlf1, mobil1, adresse_vej, adresse_by, adresse_postnr FROM kunde.kunder where status = 1;");

$data = array();

// Hent én række ad gangen. Du har sådan set din løkke allerede her
while($row = mysql_fetch_array($result))
{
  // Gem data til senere
  $data[] = $row;

  // Du kan også udskrive det her, eller hvad du nu skal
  // echo "Vej: " . $row['adresse_vej'] . "<br />";
}

// Insisterer du på at have endnu en løkke, som gennemløber det samme som før, kan du gøre det således:
foreach($data as $row)
{
  echo "Vej: " . $row['adresse_vej'] . "<br />";
}
Avatar billede starf Nybegynder
29. januar 2015 - 00:34 #4
tak

hvis jeg så samler det hele som adresser, hvordan får jeg så den til at kør hver især igennem min funktion, og genere en ny variable med denne? f.eks.

$result = mysql_query("SELECT firma, cvr, tlf1, mobil1, adresse_vej, adresse_by, adresse_postnr FROM kunde.kunder where status = 1;");
while($row = mysql_fetch_array($result))
  {
//data i array
$data[] = $row;
  }

mysql_close($con);


foreach ($data as $kunde) {

//formatere array, så jeg samler det som hele adresser i formatet. (adresse_vej adresse_by adresse_postnr)

$data2[] = $kunde[4] ." " . $kunde[5] ." ". $kunde[7] ." ". $kunde[6] ." ";
           
}

    foreach ($data2 as $test) {

//udskriver hver adresse.
              echo $test;
              echo "<hr>";
         
          } 

jeg har så brug for at køre hver adresse igennem:
$kunde1 = getCoordinates($test);

men jeg har brug for at have en variable med hver kunde, så jeg kan rykke kordinaterne for hver kunde.

og bagefter skal disse så outputtet, hvilke vel sakl gøres med noget while loop?

jeg forsøger måske at gøre dette på den forkerte måde?
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



IT-JOB