/ 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
Opfange ip
Fra : Lasse Jensen


Dato : 16-07-04 08:20

Hej med jer...

Jeg har en gæstebog, og når man skriver et indlæg vil jeg gerne
have den opfanger "skriverens" ip, og gemmer det i databasen
sammen med de andre oplysninger personen taster ind i formen...
Jeg troede selv jeg kunne finde ud af det, men der tog jeg
fejl...

Jeg har skrevet sådan her i koden:

<?
      $db = mysql_connect("host", "brugernavn", "kodeord");
      mysql_select_db("databasenavn", $db);
      if($_POST['skriv']) {
      $besked = nl2br(htmlentities($_POST['besked']));
      $dato_array = getdate();
      $dato = $dato_array["mday"] . "/" . $dato_array["mon"] . "-" .
$dato_array["year"] . "&nbsp;" . $dato_array["hours"] . ":" .
$dato_array["minutes"] . ":" . $dato_array["seconds"];
      mysql_query("INSERT INTO guestbook (navn, email, dato, ip,
besked) VALUES
('$_POST[navn]','$_POST[email]','$dato','$ip','$besked')");

      }
      ?>

<?
      $foresp = mysql_query("SELECT * FROM guestbook ORDER BY nr
DESC");
      while($data = mysql_fetch_array($foresp)){
      echo "<table width=\"100%\"
style=\"border-width:1px;border-style:solid;border-color:#233141;
border-collapse:collapse;background:#EEEEEE\"
cellpadding=\"3px\">";
      echo "<tr><td class=\"guestbook\" width=\"50%\"
align=\"left\">";
      echo "Fra: <a class=\"guestbook\"
href=\"mailto:".$data['email']."\">".$data['navn']."</a></td>";
      echo "<td class=\"guestbook\" width=\"50%\"
align=\"right\"><b>".$data['dato']."</b></td></tr>";
      echo "<tr><td colspan=\"2\" height=\"1px\"
bgcolor=\"#233141\"></td></tr>";
      echo "<tr><td colspan=\"2\" class=\"guestbook\" align=\"left\"
valign=\"top\">".$data['besked']."</td></tr>";
      echo "</table>";
      echo "<p>";
      }
      ?>

Jeg har så også oprettet en tabel hvor der er de felter som der
hele tiden har været + det nye felt til ip inde i PHPMYADMIN. Jeg
har sat den til Tinytext. Og felterne kommer i den rigtige
rækkefølge...

Jeg har som I kan se brugt $ip i koden, men jeg ved ikke om der
er nogen variabel der hedder det, som opsnapper ens ip.. Det
mener jeg bare...

Kan I ikke hjælpe mig??

Mange tak for hjælpen

Mvh. Lasse Jensen - www.webweaver.dk

--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

 
 
Jacob Atzen (16-07-2004)
Kommentar
Fra : Jacob Atzen


Dato : 16-07-04 09:30

Lasse Jensen <lassejensen1@ofir.dk> writes:

> Jeg har en gæstebog, og når man skriver et indlæg vil jeg gerne
> have den opfanger "skriverens" ip, og gemmer det i databasen
> sammen med de andre oplysninger personen taster ind i formen...
> Jeg troede selv jeg kunne finde ud af det, men der tog jeg
> fejl...
>
> Jeg har skrevet sådan her i koden:
[snip en masse kode]

Lige et godt råd: Når du stiller spørgsmål, så nøjes med at poste den
relevante del af koden, så er der flere der gider læse den igennem.

> Jeg har som I kan se brugt $ip i koden, men jeg ved ikke om der
> er nogen variabel der hedder det, som opsnapper ens ip.. Det
> mener jeg bare...

Prøv at kigge på:
<http://dk2.php.net/manual/en/reserved.variables.php#reserved.variables.server>

--
Med venlig hilsen
- Jacob Atzen

Kim Andersen (16-07-2004)
Kommentar
Fra : Kim Andersen


Dato : 16-07-04 09:36

$ip = $_SERVER["REMOTE_ADDR"];

echo $ip;

Der igennem har du IP adressen.

/Kim



Bertel Lund Hansen (16-07-2004)
Kommentar
Fra : Bertel Lund Hansen


Dato : 16-07-04 09:49

Lasse Jensen skrev:

>Jeg har en gæstebog, og når man skriver et indlæg vil jeg gerne
>have den opfanger "skriverens" ip

Her sætter jeg en stribe variable med oplysninger om den besøgende:

   $user_agent = $_SERVER["HTTP_USER_AGENT"];
   $browser = substr($user_agent,0,strpos($user_agent,' ('));
   $os = substr($user_agent,strpos($user_agent,' (')+2);
   $os = substr($os,0,strpos($os,')'));
   $language = substr($user_agent,strpos($user_agent,')')+3);
   $ip = $_SERVER["REMOTE_ADDR"];
   $port = $_SERVER["REMOTE_PORT"];
   $hostname = gethostbyaddr($ip);

Denne ene linje løser dit problem:
   $ip = $_SERVER["REMOTE_ADDR"];

--
Bertel
http://bertel.lundhansen.dk/   FIDUSO: http://fiduso.dk/

Lasse Jensen (16-07-2004)
Kommentar
Fra : Lasse Jensen


Dato : 16-07-04 13:00

Mange tak for hjælpen, det virkede

Lige et sidespørgsmål. Kan man blokke ip'er inde i PHPMYADMIN, så
vedkommede ikke kan bruge gæstebogen, eller skal man lave et script
ved siden af???

Mvh. Lasse Jensen - www.webweaver.dk

--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Henrik Stidsen (16-07-2004)
Kommentar
Fra : Henrik Stidsen


Dato : 16-07-04 14:24

Lasse Jensen <lassejensen1@ofir.dk> wrote in
news:40f7c32b$0$23869$14726298@news.sunsite.dk

> Lige et sidespørgsmål. Kan man blokke ip'er inde i PHPMYADMIN, så
> vedkommede ikke kan bruge gæstebogen, eller skal man lave et script
> ved siden af???

Det kommer an på hvordan dine tabeller ser ud - men det helt klart
smarteste er at lave det i PHP koden.

--
Henrik Stidsen - http://hs235.dk/ - http://såkadulæredet.dk/
"Is everyone else in the world a moron, or is it just me?"
(Dilbert Newsletter)

Søg
Reklame
Statistik
Spørgsmål : 177559
Tips : 31968
Nyheder : 719565
Indlæg : 6408929
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste