MarioSal Δημοσ. 26 Ιουνίου 2008 Δημοσ. 26 Ιουνίου 2008 <? $file = './info.txt'; $browser_info = $_SERVER['HTTP_USER_AGENT']; $ip = $_SERVER['REMOTE_ADDR']; $server = $_SERVER; echo "Η IP σας είναι η $ip. <p>Oι πληροφορίες του Browser σας είναι οι $browser_info</p>"; (($fp = fopen($file, 'a')) && (fwrite($fp, 'IP = ' . $ip . "\n")) && (fclose($fp))); ?> Έχω αυτόν τον κώδικα στην ιστοσελίδα μου. Θέλω, εάν γίνεται, όταν η IP του επισκέπτη έχει γραφτεί παλαιότερα να μην ξαναγράφεται. Έτσι ώστε να μην έχω δύο φορές την ίδια IP.
alexandr0s Δημοσ. 26 Ιουνίου 2008 Δημοσ. 26 Ιουνίου 2008 α) Φτιάξε το με μια βάση δεδομένων (πχ ένας πίνακας που να περιέχει ip και όταν υπάρχει ήδη να μη ξαναγίνεται insert) β) Μη ψάχνεις αν υπάρχει ήδη, απλά βάλε δίπλα από την ip και την ημερομηνία/ώρα να είναι πιο complete
sgoll Δημοσ. 26 Ιουνίου 2008 Δημοσ. 26 Ιουνίου 2008 ΕΚΤΟΣ ΑΠΟ ΤΗΝ ΒΑΣΗ ΜΠΟΡΕΙΣ ΝΑ ΨΑΧΝΕΙΣ ΠΡΩΤΑ ΟΛΟ ΤΟ ΑΡΧΕΙΟ ΕΑΝ ΠΕΡΙΕΧΕΙ ΤΗΝ ΙΡ ΚΑΙ ΜΕΤΑ ΝΑ ΠΑΣ ΚΑΙ ΝΑ ΤΟ ΓΡΑΦΕΙΣ ΑΛΛΑ ΑΥΤΟ ΠΟΥ ΕΙΠΕ Ο ΠΡΟΗΓ.ΦΙΛΟΣ ΕΙΝΑΙ Η ΠΙΟ ΣΩΣΤΗ ΛΥΣΗ (ΒΑΣΗ ΔΕΔΟΜΕΝΩΝ->ΠΙΝΑΚΑΣ ΕΠΙΣΚΕΨΕΩΝ(ΤΡΕΙΣ ΣΤΗΛΕΣ ID,IP,VISITDATE))
Aesmade Δημοσ. 26 Ιουνίου 2008 Δημοσ. 26 Ιουνίου 2008 Για να μπλέκει με αρχεία μάλλον δεν θέλει βάση δεδομένων. Δες αυτό: > <?php $file = './info.txt'; $browser_info = $_SERVER['HTTP_USER_AGENT']; $ip = $_SERVER['REMOTE_ADDR']; $exists = 0; $server = $_SERVER; echo "Η IP σας είναι η $ip. <p>Oι πληροφορίες του Browser σας είναι οι $browser_info</p>"; $fp = fopen($file, 'a+'); while (!feof($fp)) { fscanf($fp,"%[^\n]",$line); if ('IP = '.$ip == $line) $exists=1; } if ($exists==0) fwrite($fp, 'IP = ' . $ip . "\n"); fclose($fp); ?>
snk7 Δημοσ. 3 Ιουλίου 2008 Δημοσ. 3 Ιουλίου 2008 αφου κανεις χρηση αρχειου θα πρεπει να κανεις πινακα και μετα τον καταλληλο ελενχο το οποιο εχει πιο πολυ μανουρα και σπαταλη πορων του συστηματος απο το να το κανεις σε βαση δεδομενων οπως ειπανε και τα παιδια νωριτερα. παντως αμα θες απλα να βλεπεις χρηστες και οχι να ασχοληθεις βαθυτερα με τον προγραμματισμο θα σου προτεινα τα awstats google analytics
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.