Avatar billede mygster Nybegynder
10. oktober 2006 - 11:48 Der er 3 kommentarer og
1 løsning

Tilføj link til til hjemmeside

Hej Jeg sidder med en blog hvor jeg godt kunne tænke mig at brugerne skulle have mulighed for at tilføje deres link. Det skal forgå med .php og txt-fil, da jeg allerede bruger den database der er tilgængelig til bloggen.
Jeg er ikke nogen php-haj.

Det skal fungere således at brugeren kan indsætte sit link, plus en beskrivelse af linket. Trykke godkend og linket skal være synligt på den side jeg har med link.

Håber at der er nogen der kan hjælpe.
Avatar billede webstuff Nybegynder
10. oktober 2006 - 12:01 #1
Selvom du bruger databasen til din blog, kan man sagtens have flere tabeller til alt muligt andet..

Så hvis du opretter en tabel i din database der hedder noget i retning af:

links:
id = bigint, auto_increment, primary key
link = varchar(200)
navn = varchar(200)

Så er det bare at lave en form alla

<form action="handle.php" method="post">
Link:
<input type="text" name="link">
Navn:
<input type="text" name="navn">
<input type="submit" value="Tilføj link">
</form>

og en handle.php som modtager og smider i databasen;

<?

$link = mysql_real_escape_string($_POST["link"]);
$link = str_replace("http://", "", $link);
$navn = mysql_real_escape_string($_POST["navn"]);

if(!empty($link) && !empty($navn))
{
mysql_query("INSERT INTO links (link, navn)VALUES('$link', '$navn')") or die(mysql_error());
header("location: links.php");
exit;
}
else
{
echo "Du skal udfylde begge felter!";
}
?>


og en side til at udskrive dem:

links.php
<?
$dbconn = mysql_connect('localholst', 'brugernavn', 'kodeord') or die(mysql_error());
mysql_select_db("database", $dbconn) or die(mysql_error());

$query = mysql_query("SELECT * FROM links ORDER BY id") or die(mysql_error());
while($row = mysql_fetch_assoc($query))
{
echo "<a href=\"http://".$row["link"]."\" target=\"_blank\">".$row["navn"]."</a><br />\n";
?>

Mvh. Andreas
Avatar billede mygster Nybegynder
10. oktober 2006 - 12:49 #2
ok det lyder fint, men jeg har hosting hos One.com og de bruger PhpMy admin, så jeg er ikke helt sikker på hvordan jeg opretter en ny tabel. Er det noget du ved ?
Avatar billede webstuff Nybegynder
10. oktober 2006 - 20:34 #3
du logger ind i phpmyadmin
vælger den database du vil bruge
i hovedvinduet er der en form der hedder "Opret ny tabel"
skriv navnet på tabellen (link) i text feltet, og skriv 3 nedenunder i "antal rækker".
Tryk "OK"

Så kommer der et nyt vindue frem med en masse input felter.
I det øverste til venstre skriver du "id" i dropdown'en ved siden af vælger du "BIGINT2.
I anden række skriver du "link" i det første tekst felt, i dropdown'en ved siden af vælger du "VARCHAR" (står som standard) og i tekstfeltet til højre for den skriver du "200" (value).
næste række kalder du det første felt for "navn" og gør resten som med "link".

Nu er du næsten færdig.

Nu skal du gå op til rækken "id" igen, og helt ude til højre (lige før radio knapperne) er der en dropdown, den sætter du til "auto_increment" og så checker du radioboksen lige til højre for (primary key).

Så trykker du "gem" og så skulle det gerne virke :-)

Skriv hvis du har flere problemer :P

mvh. andreas
Avatar billede mygster Nybegynder
11. oktober 2006 - 08:23 #4
tak skal du have. Men jeg fandt en anden løsning som, jeg brugte. Det så ikke ud som om jeg havde rettigheder til at redigere databasen gennem b-one. Men Jeg fandt et system som gjorde det automatisk.
Du kan se det på http://www.hestelinket.dk/links/links.php

Jeg har dog fundet noget andet som jeg godt kunne bruge noget hjælp til. Jeg vil gerne have en 'onclick' funktion ind i in php-sætning som henter linket således at man kan se hele URL'en i stedet for den nuværende dynamiske, som php-scriptet genere.
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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