webForumDet fria alternativet

echo information från databas

6 svar · 648 visningar · startad av WilleB

WilleBMedlem sedan okt. 200934 inlägg
#1

Nybörjare i php och undrar hur man kan skriva ut information från en MySQL databas

<?PHP
$objConn = mysql_connect ('***.se.mysql', '***_se', '***');
mysql_select_db('***_se');
$strQuery = mysql_query("
SELECT hem FROM texter
") or exit(mysql_error());
while ($r = mysql_fetch_array($strQuery))
{
echo "$r <br>";
}
mysql_close($objConn);
?>
onkelborgMedlem sedan juli 2003555 inlägg
#2

Eftersom att du är nybörjare så rekommenderar jag att du tittar på PDO istället för det gamla skräpet, lika bra att du gör rätt ifrån början istället för att börja din karriär med spagetti :)

aasahMedlem sedan mars 20034 471 inlägg
#3

WilleB skrev:

Nybörjare i php och undrar hur man kan skriva ut information från en MySQL databas

I varje varv i while-slingan innehåller $r en array med värdet på de i SELECT utvalda kolumnerna på just den här raden. Med den SQL-frågan innehåller $r följande array('hem' => '<värde>', 0=> '<värde>'). Att värdet står två gånger beror på att du inte angav om du vill ha ut det med num nycklar (0, 1, 2...) eller associativa (samma nyckel som kolumnen heter, 'hem' i det här fallet), vilket gör att du får båda.

<?PHP
$objConn = mysql_connect ('***.se.mysql', '***_se', '***');
mysql_select_db('***_se');
$strQuery = mysql_query("
SELECT hem FROM texter
") or exit(mysql_error());
while ($r = mysql_fetch_array($strQuery))
{
   foreach($r as $key => $val) //Loopa igenom arrayen och skriv ut alla key/value-par
   {
      echo "$key => $val, ";
   }
   echo "<br>";
}
mysql_close($objConn);
?>
WilleBMedlem sedan okt. 200934 inlägg
#4

Att värdet står två gånger beror på att du inte angav om du vill ha ut det med num nycklar (0, 1, 2...) eller associativa (samma nyckel som kolumnen heter, 'hem' i det här fallet), vilket gör att du får båda.

Och hur fixar jag det?

GunnarDMedlem sedan juni 20014 290 inlägg
#5

Så här:

$query="SELECT hem FROM texter";
$result=mysql_query($query);
while($row=mysql_fetch_array($result, MYSQL_ASSOC)) {
  echo $row['hem'];
}
WilleBMedlem sedan okt. 200934 inlägg
#6

´kan du sätta in det i min kod?

GunnarDMedlem sedan juni 20014 290 inlägg
#7

Skulle rekommendera att du läser på lite om php och mysql om du inte klarar detta själv, men men här är koden:

<?PHP
$objConn = mysql_connect ('***.se.mysql', '***_se', '***');
mysql_select_db('***_se');
$strQuery = mysql_query("
SELECT hem FROM texter
") or exit(mysql_error());
while ($r = mysql_fetch_array($strQuery, MYSQL_ASSOC)) // Bara lagt till MYSQL_ASSOC)
{
echo $r['hem']; //skriver ut vad som finns i hem kolumnen.
echo "<br>";
}
mysql_close($objConn);
?>
126 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
124 ms — hämta tråd, inlägg och bilagor (db)