webForumDet fria alternativet

Länka med hjälp av MySQL

PHP

9 svar · 141 visningar · startad av Faktor

Medlem sedan feb. 200135 inlägg
Frågan#1

Säg att jag vill lista ett antal namn och göra dessa namn till länkar. Det är tänkt att länkarna ska gå till emailadresser som finns lagrade i samma tabell som namnen. Jag vill alltså skapa en dynamisk länk eller vad man ska kalla det. Frågan är nu, hur gör jag detta.

Följande rad är det tänkt att länk-koden ska petas in i:

printf("<tr><td>%s</td><td>%s</td><td>%s</td><TD>%s</TD></tr>\n<TR BGCOLOR=#DEDFDF HEIGHT=1><TD COLSPAN=4></TD></TR>", $myrow[1], $myrow[3], $myrow[4], $myrow[5], $myrow[6]);

$myrow[1] = Namnet
$myrow[3] = Emailadress

Medlem sedan apr. 20019 inlägg
#2

Om det är en mailto du vill göra skriver du:

<a href="mailto:<?=$myrow[1]?>"><?=$$myrow[3]?></a>

eller tex printf("<a href=\"mailto:".$myrow[1]."\">".$myrow[3]."</a>");

Eller hur menar du?

// Malte ...

Medlem sedan apr. 20019 inlägg
#3

Hmm, vände visst på [1] och [3], men byt ut dom mot varandra bara så funkar det som jag skrev, om det nu var det du var ute efter.

// Malte ...

Medlem sedan apr. 20019 inlägg
#4

Läste vad du skrivit igen, och fattar nog mer vad du menade nu.....

<?
$i = 0;
while($myrow = mysql_fetch_array($db_result)){
$aNamn[$i] = "".$myrow["1"];
$aMail[$i] = "".$myrow["3"];
$i++;
}
$ii = 0;
while($ii!=$i){
?>
<a href="mailto:<?=$aMail[$ii]?>"><?=$aNamn[$ii]?></a>
<?
$ii++;
}
?>

[Redigerat av Aldarin den 25 apr 2001]

Medlem sedan feb. 200135 inlägg
#5

Tack så mycket för hjälpen. Det första var rätt :)
Visserligen får jag mailto:"ett namn" just nu men det ska jag nog kunna ordna själv. Hoppas det iaf, annars kommer jag väl tillbaka.

Medlem sedan feb. 200135 inlägg
#6

Okej, har fixat det nu. Tog inte lång tid. Fick ett så bra svar så jag känner att jag måste tacka igen.

Medlem sedan apr. 20019 inlägg
#7

Det var ju roligt att du uppskattade svaret....

Har några kommentarer bara....

Det mest lämpliga är ju att ha olika arrayer med informationen i respektive array kopplad till samma tal, tex

$namn[1]
$email[1]
$telefon[1]

pekar på person 1, medans

$namn[2]
$email[2]
$telefon[2]

pekar på person 2.

Låt oss säga att du skulle få en lista med 35000 personer du vill hålla reda på, ja, du fattar...

Alternativt kan du ju bygga det som nested arrays... men jag föredrar det första alternativet.

[Redigerat av Aldarin den 26 apr 2001]

Medlem sedan feb. 200135 inlägg
#8

Tja, detta är min 3:e dag med PHP så det är något jag får ta och bita i senare.
Vet inte hur man gör det ännu.

Medlem sedan apr. 20018 inlägg
#9

Detta borde väl vara det smidigaste?

$i = 0;
mysql_query ( "QUERY" );
while ( $row = mysql_fetch_array ( $result ) )
{
    $email[$i] = $row[email];
    $namn[$i] = $row[namn];
    $i++;
}

------------------
[ per@datorpriser.net | www.datorpriser.net | 31501747 ]

Medlem sedan apr. 20019 inlägg
#10

Det är ju det jag skrivit några rader upp..... Vad menar du är skillnaden mella detta och det jag skrev (förutom att du inte har med presentationsbiten)?

391 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
244 ms — deklarationer (db)
0 ms — hämta statistik (cache)
143 ms — hämta tråd, inlägg och bilagor (db)
243 ms — ändringar (db)