Top
Phpuniverset logo
 

INDHOLD

Forside

Job annoncer

Tips og Tricks

Konkurrence

Downloads

Dokumenter

PHP bog shop

Forum

Online udviklere


Propelcom

ARTIKLER

CSS

Diverse

E-handel / annoncer

Grafik

Html

Internet

Javascript

Linux

PHP/MySQL

Programmer

Flash

Søgemaskiner

Windows

C / C++


INFO

Information

Annoncering

Kontakt

Lav et community i PHP

Forside Kategori PHP/MySQL Lav et community i PHP




 

Dette er en grundlæggende artikel til hvordan du laver et lille community, med forskelige
diverse funktioner. I de fleste community's og brugersystemer bliver det brugt session's.
En session er noget der bliver gemt på det brugte server, som gemmer de dataer man taster ind.
Men session'en bliver for det meste kun brugt til at gemme et brugernavn.

Hvis du følger denne artikel er det vigtigt at din server /(dit host) understøtter MySQL og
sessions.


NB. Under denne artikel kan der nemt forkomme stavefejl - og kode fejl, men håber du kan bruge den =)

------------------------------------------------------------------------
Del #1,1: Lav databasen.

I din MySQL database skal du altid gemme tabeller, med hvisse navne; som dit script kender.


CREATE TABLE brugere (
id int(9) unsigned NOT NULL auto_increment,
brugernavn varchar(200) NOT NULL default '',
kodeord varchar(200) NOT NULL default '',
email varchar(200) NOT NULL default '',
UNIQUE K'EY id (id)
) TYPE=MyISAM;

Når du har gjordt det er din database faktisk klar.


------------------------------------------------------------------------

Del #1,2: Forbindelsen til database; Lav en fil: ("db_connect.php")

I stedet for at holde kontakt til databasen på alle siderne laver jeg altid én fil med
forbindelsen, filen kan derfor include's på alle de andre sider og dermed holde
kontakten vedlige.

I filen kan du også indsætte mange andre nyttige ting som skal være på alle de dynamiske sider.
På denne side har jeg også valgt at indsætte log-ud strengen.

...............................................................
<?php
$database = ""; // her skal du angive din database
$bruger = ""; // her skal du angive din bruger
$password = ""; // her skal du indtaste dit kodeord til din mySQL server
$host = "";// dit host for det meste er det localhost

mysql_connect($host, $bruger, $password); // Forbindelse til serveren.
mysql_select_db($database); // Holder forbindelse til databasen

if($mod == "logOut"){
session_start();
session_destroy();

echo "<script>\n setTimeOut(\"location.href='login.php?ermsg=Du er nu logget ud';\", 200); \n </script>";

}

if($brugernavn){
$bSQL = mysql_query("SELECT * FROM brugere WHERE brugernavn = '$brugernavn'");
$brugerinfo = mysql_fetch_array($bSQL);
}
?>
...............................................................
Så kan jeg skrive <? include "db_connect.php"; ?> på alle siderne.

------------------------------------------------------------------------
Del #2,0: Login siden, tjek om opkysningerne passer; Lav en fil: ("login.php")

I alle communityes skal man altid angive noget for at få adgang til nogle bestemte sider, nogle
gange bare et kodeord, nogle gange kundenummer eller brugernavn. Men i dette tilfælde skal vi
angive brugernavn eller Username som nogle vælger og kalde det (Engelsk)

...............................................................
<?php
session_start();
include "db_connect.php";
if($tjek == "yes") {
$sql = mysql_query("SELECT * FROM BRUGERE WHERE brugernavn = '$fbruger'");
$btjek = mysql_fetch_array($sql);
if($fkode == $btjek[kodeord]){
$brugernavn = $btjek[brugernavn];
session_register("brugernavn");
header("location: login_ok.php");
}
else{
$ermsg = "Forkert brugernavn eller password \n";
}
}
if($brugernavn){
header("location: login_ok.php");
}
else{
?>
<HTML>
<HEAD>
<TITLE> community </TITLE>
</HEAD>
<BODY>

<?
if($ermsg){
echo "<font color=\"red\" size=\"2\" face=\"Tahoma\">". $ermsg . "</font><br><br>\n";
}

?>

<FORM ACTION="<?=$PHP_SELF?>" METHOD="POST" NAME="FORM">
<input type="hidden" name="tjek" value="yes">
Brugernavn : <input name="fbruger" type="text"><br>
Kodeord : <input name="fkode" type="password"><br>
<input type="submit" value="login">
</form>

</BODY>
</HTML>
<?
}
?>
...............................................................

------------------------------------------------------------------------
Del #2,1: Login-okay siden, forside til dem der ER logget ind; Lav en fil: ("login_ok.php")

Når brugerene er logget ind, får de nu adgang til en række funktioner, som de kan benytte sig af.

1; ret profil
2; se profiler
3; log af

...............................................................
<?php
session_start();
include "db_connect.php";

if($brugernavn){
if($page){

echo "<HTML>\n <HEAD>\n <TITLE> community </TITLE>\n </HEAD>\n <BODY>";

if($page == "bliste"){
$sql = mysql_query("select * from brugere");
echo "\t komplet liste over alle bruger:<br><br>";
$strNumber = 0;
while($row = mysql_fetch_array($sql)) {
$strNumber = $strNumber+1;
echo "\t\t #$strNumber - <a OnClick=\"parent.location.href='?page=profil&id=$row[id]'\" style=\"cursor:hand\">$row[brugernavn]</a><br>\n";
}
if($page == "profil"){

$sql = mysql_query("select * from brugere where id = '$id'");
while($row = mysql_fetch_array($sql)) {

echo "\n\t velkommen til $row[brugernavn]'s profil.\n \t Du kan kontakte $row[brugernavn] på følgene e-mail $row[email] \n \n \t <br> Der er ikke andet her.";

}
if($id == NULL){
echo "\n Den afsøgte bruger blev ikke fundet. <br>\n Prøv igen senere.\n";
}
}
if($page == "rbruger"){

if($module){
mysql_query("UPDATE brugere SET email = '$email' WHERE brugernavn = '$brugernavn' OR id = '$brugerinfo[id]");
echo "\n \t<script> \n \t alert(\"Din profil er nu redigeret\"); \n \t parent.location.href='?page=profil&id=$brugerinfo[id]'; \n \t </script>\n";
}

echo "\t <form action=\"login_ok.php\" method=\"post\">\n";
echo "\t <input type=\"hidden\" name=\"page\" value=\"rbruger\"> \n";
echo "\t <input type=\"hidden\" name=\"module\" value=\"action\"> \n";
echo "\t <input type=\"text\" name=\"email\">\n\n";
echo "<input type=\"submit\" value=\"Rediger profil\">\n \t</form>\n";
}

echo "</BODY>\n </HTML>";
}
else{


?>
<HTML>
<HEAD>
<TITLE> community </TITLE>
</HEAD>

<body link="#000000" vlink="#000000" alink="#000000">

<DIV align=left>
<TABLE style="BORDER-COLLAPSE: collapse" borderColor=#111111 height=198 cellSpacing=0 cellPadding=0 width=432 border=0>
<TBODY>
<TR>
<TD vAlign=top width=157 height=198>

<font size="2" face="tahoma">

<a OnClick="parent.frame.location.href='?page=bliste';" style="cursor:hand">Brugerliste</a><br>
<a OnClick="parent.frame.location.href='?page=rbruger';" style="cursor:hand">Ret bruger</a><br>
<a OnClick="parent.location.href='?mod=logOut';" style="cursor:hand">Log af</a>

</TD>
<TD vAlign=top width=269 height=198>
<iframe name="frame" src="?page=start" width="200" height="300" frameborder="0">
</iframe>
</TD></TR>
</TBODY>
</TABLE>
</DIV>

</BODY>
</HTML>
<?
}
if(!$brugernavn){
header("location: login.php?ermsg=Du er ikke logget ind.");
}
}
}
?>
...............................................................

------------------------------------------------------------------------
Slut...

Eksemplerne som er indtastet her, er testet på en Apache server med PHP Ver. 4.1.1; Og dermed kører det fint.

Håber du fik god af artiklen.

Skrevet AF nikolaj sommer jensen 13 oktober '04 start: 20:41 slut 22:21



Skrevet af: Hacket | Dato : 2004-10-21 17:1 | Læst : 15414 gange | Print

Din kommentar og karakter til artiklen

Din karakter:

1

2

3

4

5

6

7

8

9

10

Kommentar:

Log ind for at give en karakter og kommentar.

Kommentarer og karakterer til artiklen

 


2/10

"Man mangler jo en masse information? - Det nytter jo ikke noget du bare skriver, uden at forklare.. Det er der jo ingen der lærer af? ;s"

Sebastian Sørensen | 18.10.2007, 11:32

 


9/10

"Mange tak Nikolaj, det var meget nyttigt."

Nick Pedersen | 20.04.2006, 04:46

 


4/10

"Forstår ikke hvor du får alle de variabler fra som du bruger... ??? mangler forklaringer...."

Dennis Munk Christensen | 17.04.2006, 17:20

 

Send Artikel/anmeldelse til: phpuni@phpuniverset.dk

Tilbage til oversigt

FORUM

Nyeste forum indlæg :

PHP/Opencart import module

Opencart/php import modul hjælp

Lækkert kontor / kontorfællesskab i Helsingør

Opdatering af PHP

Vurdering af hjemmeside

Nyeste forum svar :

Grafik problemer

Prissammenligningsside

Jeg yder fremover ikke support!

PHP - Meget simpelt nyhedsbrev

glFTPd admin module til windows

 

MEDLEM

LOGIN ER IKKE MULIGT, MENS VI LAVER NYT SITE
 

NYHEDSBREV

Nyhedsbrev

Tilmeld dig vores nyhedsbrev og modtag nyheder om nye scripts og tips samt om mange andre nye tiltag på Phpuniverset.dk


 

© Copyright 2000 Propelcom Phpuniverset's politik om personlige oplysninger, artikler & Koder Phpuniverset er optimeret til Mozilla 1024 * 768 Phpuniverset version: 3.0 beta
Webhost : Ignesco.dk - android talk & help

Bund