Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Z jakiej strony przychodzą goście
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
DevilshakerZ
Witam, znalazłem tutaj ciekawy skrypt:

HEAD:
Kod
<script type="text/javascript">
function skad()
var adres = document.referrer;
if (adres = "") {return "wejście bezpośrednie"}
else {return (adres);}
}
</script>


BODY:
Kod
<script type="text/javascript">
document.write(skad());
</script>


Wyświetla on adres strony, z jakiej gość przybył na moją stronę.
Mogłoby się to okazać dość przydatne, gdyby ta informacja zapisywała się gdzieś.

Czy mógłby ktoś przekształcić ten skrypt tak, aby to gdzieś się zapisywało, np. gość wchodzi na moją stronę i do pliku adresy.txt dopisywałby się adres strony, z której przyszedł gość, potem przyjdzie drugi gość, skrypt zapisuje adres w drugiej linijce pliku itd.?
Może być to też wysyłanie tej wiadomości na email czy jakakolwiek forma zapisu.

Proszę o pomoc lub jakiekolwiek wskazówki!
Spawnm
  1. <?php
  2. if($_SERVER['HTTP_REFERER']==''){
  3.  $x='wejście bezpośrednie';
  4. }else{
  5.  $x=htmlspecialchars(mysql_real_escape_string($_SERVER['HTTP_REFERER']));
  6. }
  7. $query="INSERT INTO tabel (www) VALUES ('$x')";
  8. if(!@mysql_query($query)){
  9.  die ('error');
  10. }
  11. ?>


powinno działać:)
potrzebna baza db
DevilshakerZ
y.. a można trochę jaśniej? ^^

Tzn. gdzie ustawić dane połączenia do DB, jaką tabelę utworzyć? Bo na razie wywala error


PS. Co do zapisu do pliku, mogłoby wyglądać to tak:
Kod
<?php
$nazwa_pliku = "adresy.txt";

$skrypt = '<script type=text/javascript>
document.write(skad());
</script>';

if (is_writeable($nazwa_pliku))
   {
    if ($plik = fopen($nazwa_pliku, "w"))
      {
       if (fwrite($plik, $skrypt) !== FALSE) echo "Zapis do pliku zakończył się powodzeniem";
         else echo "Zapis do pliku się nie powiódł";

       fclose($plik);
?>

Ale zamiast adresu strony zapisuje kod skryptu. Może da się jakoś zrobić, aby zapisywało tylko "wynik" skryptu zamiast jego kodu?
Spawnm
Co do mojego kodu:
robisz baze danych o jakiejś nazwie np w phpadmin
i dajesz tam tabele o nazwie np ref
ktora posiada:
id int(11) not null auto_increment,
www varchar(50) not null,
klucz (id)

  1. <?php
  2. if(@mysql_connect('localhost','user','pass')){
  3.  if(!@mysql_select_db('nazwa')){
  4.    die('error db');
  5.  }
  6. }else{
  7.  die('mysql error');
  8. }
  9. if($_SERVER['HTTP_REFERER']==''){
  10. $x='wejście bezpośrednie';
  11. }else{
  12. $x=htmlspecialchars(mysql_real_escape_string($_SERVER['HTTP_REFERER']));
  13. }
  14. $query="INSERT INTO ref (www) VALUES ('$x')";
  15. if(!@mysql_query($query)){
  16. die ('error');
  17. }
  18. ?>


i to chyba tyle smile.gif
DevilshakerZ
A mógłbyś dać kod SQL do utworzenia tej tabeli? Bo mi w PMA jakieś błędy wywala (sory, nie robię zbytnio w SQL winksmiley.jpg )
Spawnm
proszę:
  1. CREATE TABLE ref (
  2. id int(11) NOT NULL AUTO_INCREMENT,
  3. www varchar(50) NOT NULL,
  4. UNIQUE KEY id (id)
  5. ) TYPE=MyISAM;
DevilshakerZ
Wielkie dzięki! smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.