/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Hente info ind i en tabel
Fra : Peter Nørkjær


Dato : 18-08-03 21:52

Hej.
I har hjulpet mig før, men mine nybegynder spørgsmål, og nu kommer der et
til. Jeg aner ikke hvor jeg skal starte med dette problem.
Jeg sidder og roder en en intranetside. Mine evner er ikke alverden, men jeg
får nu og da et par ideer, som jeg vil prøve at føre ud i livet. Her er den
nyeste.
På siden er der en liste over brugere der pt. er tilmeldt. Det er en liste
som det kun er mig (webmasteren) der kan rette i.
Lige nu er listen bare i alm. html format, men jeg vil gerne gøre det lidt
lettere for mig selv, derfor dette spørgsmål:

Jeg vil gerne have bruger-info liggende i en fil. I denne fil er alle
brugere og deres informationer.
Disse informationer skal så hentes ind i en html-side, og forskellig info
skal stå forskellige steder.
Kan php ikke bruges til sådan noget?
Jeg kan ikke finde ud af databaser (sql), så det må gerne være simpelt.

På forhånd tak for hjælpen
/Peter



 
 
Martin Sveegaard (19-08-2003)
Kommentar
Fra : Martin Sveegaard


Dato : 19-08-03 01:27

On Mon, 18 Aug 2003 22:51:48 +0200, "Peter Nørkjær"
<noerkjaerREMOVE@mail.dk> wrote:
[klip]
>På siden er der en liste over brugere der pt. er tilmeldt. Det er en liste
>som det kun er mig (webmasteren) der kan rette i.
>Lige nu er listen bare i alm. html format, men jeg vil gerne gøre det lidt
>lettere for mig selv, derfor dette spørgsmål:
>
>Jeg vil gerne have bruger-info liggende i en fil. I denne fil er alle
>brugere og deres informationer.
>Disse informationer skal så hentes ind i en html-side, og forskellig info
>skal stå forskellige steder.
>Kan php ikke bruges til sådan noget?
>Jeg kan ikke finde ud af databaser (sql), så det må gerne være simpelt.
[klip]

Jo, det kan sagtens lade sig gøre. Jeg vil dog mene at MySQL er den
perfekte løsning til den slags og det er faktisk ikke så svært. Det er
en hurtigere, mere flexibel og betydeligt mere funktionel metode ift.
fil-udgaven (som jeg osse vil mene er sværere at håndtere).
Her er et lille eks.:

<?
$fp = fopen('brugere.txt','r');
while (!feof($fp)) {
   $data[] = fgetcsv($fp,500,',');
}
fclose($fp);

echo "<table border='1'>";
echo
"<tr><td><b>Bruger</b></td><td><b>Indmeldt</b></td><td><b>Sex</b></td></tr>";
foreach ($data as $line) {
   echo
"<tr><td>$line[0]</td><td>$line[1]</td><td>$line[2]</td></tr>";
}
echo "</table>";
?>

brugere.txt:
---------------
rudolf,2003-02-17,mand
gertrud,2003-04-30,kvinde
pluto,2003-01-31,hund
MVH Martin S

Peter Nørkjær (19-08-2003)
Kommentar
Fra : Peter Nørkjær


Dato : 19-08-03 08:51

> Jo, det kan sagtens lade sig gøre. Jeg vil dog mene at MySQL er den
> perfekte løsning til den slags og det er faktisk ikke så svært.

Mange tak for svaret Martin.
Jeg må bare sætte mig ned og lære lidt om det.
Eksemplet kommer uden tvivl til stor gavn.

Jeg har et til problem af samme karakter, som du/I måske også kan hjælpe
med.
Et nogle sider har jeg brug for at sætte enkelte e-mail adresser og
tilhørende navne ind.
For eksempel på webmasteren, så der kommer til at stå:
Din webmaster er <a href="mailto:peter@mail.com">Peter</A>
I denne streng skal adressen og navnet så være hentet andet steds fra, så
hvis der kommer en ny til, kan der stå:
Din webmaster er <a href="mailto:martin@post.com">Martin</A>

Mit problem er, at jeg kan bruge en include kommando, men det bliver noget
bøvl med mange filer.
Jeg kan ikke få en funktion til at virke, så jeg kan have havn/adr. stående
et sted i dokumentet og senere i dokumentet hente funktionen frem med
navnet.

Min ide (jeg kan ikke sproget, så bare for at give en ide):
Øverst i dokumentet eller i en seperat fil angiver jeg navnene på webmaster
og sysadm i en funktions-lignende ting.
Så en masse fyld, og pludselig har jeg brug for sysadm's e-mail, så henter
jeg den frem.

I dette eksempel synes jeg alle sql-koderne bliver overvældende...

Er der en simpel funktion jeg overser?

/Peter



Martin Sveegaard (19-08-2003)
Kommentar
Fra : Martin Sveegaard


Dato : 19-08-03 14:42

On Tue, 19 Aug 2003 09:50:42 +0200, "Peter Nørkjær"
<noerkjaerREMOVE@mail.dk> wrote:
[klip]
>Et nogle sider har jeg brug for at sætte enkelte e-mail adresser og
>tilhørende navne ind.
>For eksempel på webmasteren, så der kommer til at stå:
>Din webmaster er <a href="mailto:peter@mail.com">Peter</A>
>I denne streng skal adressen og navnet så være hentet andet steds fra, så
>hvis der kommer en ny til, kan der stå:
>Din webmaster er <a href="mailto:martin@post.com">Martin</A>
>
>Mit problem er, at jeg kan bruge en include kommando, men det bliver noget
>bøvl med mange filer.
>Jeg kan ikke få en funktion til at virke, så jeg kan have havn/adr. stående
>et sted i dokumentet og senere i dokumentet hente funktionen frem med
>navnet.
>
>Min ide (jeg kan ikke sproget, så bare for at give en ide):
>Øverst i dokumentet eller i en seperat fil angiver jeg navnene på webmaster
>og sysadm i en funktions-lignende ting.
>Så en masse fyld, og pludselig har jeg brug for sysadm's e-mail, så henter
>jeg den frem.
[klip]

Der er flere måder at gøre det på. Du kunne includere det fra en fil,
som du selv er inde på. En anden oplagt mulighed er at bruge sessions.
Eks.:

$_SESSION['admin_email'] = "peter@mail.com";
$_SESSION['admin_navn'] = "Peter";
$_SESSION['coadman_email'] = "martin@mail.com";
$_SESSION['coadmin_navn'] = "Martin";

Du skal så skrive: session_start(); i starten af alle dine sider. Og
du kan så bruge dem sådan:

echo "Din webmaster er <a href=\"mailto:" . $_SESSION['admin_email'] .
"\">" . $_SESSION['admin_navn'] . "</A>";

Som du ser, er det rent faktisk nemmere bare at skrive det på normal
vis. Fordelen er hvis der skal ændres i et navn eller emailadresse, så
behøver man kun at rette det et sted.
-
Med Venlig Hilsen
c",) Martin S

Peter Nørkjær (19-08-2003)
Kommentar
Fra : Peter Nørkjær


Dato : 19-08-03 21:09

> Som du ser, er det rent faktisk nemmere bare at skrive det på normal
> vis. Fordelen er hvis der skal ændres i et navn eller emailadresse, så
> behøver man kun at rette det et sted.

Hej Martin.
Jeg sætter virkelig pris på, at du tager tid til at hjælpe mig!
Men jeg kan ik´ke helt få det til at virke.

Kan jeg så dig til at hjælpe med en skabelon?

Jeg kan godt lide ideen, for det øverste kan jeg gemme i toppen af siden der
hentes med include, så en ændring i navn/mail skal bare ændres eet sted for
flere sider.
Men hvordan henter jeg data'ene midt på siden, hvis data skal stå øverst?

Altså, kan jeg tigge og bede dig om, at lave en kort html side, hvor det
virker:

------------------------------------------------
Hvis du har problemer kan du kontakte din <a
href="mailto:martin@mail.com">systamadministrator</A>
------------------------------------------------

I dette eksempel skal det vel hentes midt på siden?

Igen tak for hjælpen!

/Peter



Martin Sveegaard (20-08-2003)
Kommentar
Fra : Martin Sveegaard


Dato : 20-08-03 01:44

On Tue, 19 Aug 2003 22:08:43 +0200, "Peter Nørkjær"
<noerkjaerREMOVE@mail.dk> wrote:

>Kan jeg så dig til at hjælpe med en skabelon?
>
>Jeg kan godt lide ideen, for det øverste kan jeg gemme i toppen af siden der
>hentes med include, så en ændring i navn/mail skal bare ændres eet sted for
>flere sider.
>Men hvordan henter jeg data'ene midt på siden, hvis data skal stå øverst?

Ok, det bliver nu en php side. Det duer ikke i ren html. Her kan du så
vælge at lægge oplysningerne i en anden fil du includer i stedet for
'myinc.php'. Bare husk start og slut tags <?/?> i din inc fil. Og husk
session_start(); skal være allerøverst i dine filer (før 'html/head').

test.php
-----------
<? session_start();?>
<html>
<head>
<title> titel </title>
<meta http-equiv="Content-Type" content="text/html;
charset=iso-8859-1">
</head>
<body>
<?
include 'myinc.php';
echo "Her er noget forskellig kode<br />";
$p1 = 24;
$i = 1;
print (${"p$i"} . "<br />");
$val = 1;
$str = ($val == 1) ? "\$val = 1" : "\$val <> 1";
print $str . "<br /><br />";
//Her har vi brug for admin's email
echo "Din webmaster er <a href=\"mailto:" . $_SESSION['admin_email'] .
"\">" . $_SESSION['admin_navn'] . "</A><br />";
echo "Co-admin er <a href=\"mailto:" . $_SESSION['coadmin_email'] .
"\">" . $_SESSION['coadmin_navn'] . "</A>";
//Her kommer yderligere kode
//etc.....
?>
<p>Her er så et afsnit med html. Her kan du bruge session-variabler
sådan her: Din webmaster: <a
href="mailto:<?=$_SESSION['admin_email']?>">Peter</a></p>
</body>
</html>

myinc.php
--------------
<?
$_SESSION['admin_email'] = "peter@mail.com";
$_SESSION['admin_navn'] = "Peter";
$_SESSION['coadmin_email'] = "martin@mail.com";
$_SESSION['coadmin_navn'] = "Martin";
?>

-
Med Venlig Hilsen
c",) Martin S

Søg
Reklame
Statistik
Spørgsmål : 177502
Tips : 31968
Nyheder : 719565
Indlæg : 6408536
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste