brauche Webseite ideal für Vereine und Firmen
- Ad -
php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > PHP Developer Forum
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 

 


PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Post your PHP questions here!

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 25-02-2010, 12:52
martinm79
 Registrierter Benutzer
Links : Onlinestatus : martinm79 ist offline
Registriert seit: Jan 2004
Ort: Deutschland
Beiträge: 744
martinm79 ist zur Zeit noch ein unbeschriebenes Blatt
Standard IP Bereich überprüfen, ob im Bereich x und y

Hallo, meine Klasse weißt Fehler auf, vielleicht kann mir ja jemand ein Tip geben.

PHP-Code:
/**
 * IP Bereich überprüfen (bool)
 *
 */
class IpCheck
{

    
/**
     * Der Funktion wird eine IP Adresse übergeben und gibt ein boolischen Wert zurück, ob dieser IP Bereich gesperrt ist.
     *
     * @param string $ip [$_SERVER['REMOTE_ADDR']]
     * @return bool
     */
    
function check($ip)
    {
        
$ip ip2long($ip);

        
// IP Array aus dem Model holen
        // ip_ab = gesperrte IP
        // ip_bis = bis zu diesem IP Bereich gesperrt (ip_ab und ip_bis muß gesetzt sein)

        
while($row mysql_fetch_assoc($r)){
            if(
ip2long($row['ip_ab']) == $ip) {
                return 
false;
            }
            elseif(
ip2long($row['ip_ab']) <= $ip && ip2long($row['ip_bis']) >= $ip) {
                return 
false;
            }
        }
        return 
true;
    } 
Wenn ich jetzt eine IP der Funktion übergebe, beispiel 87.188.248.xx dann müchte ich prüfen ob diese im Bereich 41.208.175.0 (ip_ab) und 41.208.175.255 (ip_bis) liegt.
PHP-Code:
if(41.208.175.0 <= 87.188.248.xx  && 41.208.175.255  => 87.188.248.xx ) {
  
// Ja, liegt im Bereich
}else{
  
// Nein, liegt nicht im Bereich

__________________
Gut geraten ist halb gewußt.

Geändert von martinm79 (25-02-2010 um 13:28 Uhr)
Mit Zitat antworten
  #2 (permalink)  
Alt 25-02-2010, 14:35
Slava
 PHP Senior
Links : Onlinestatus : Slava ist offline
Registriert seit: Nov 2002
Ort: Köln->Karlsruhe
Beiträge: 1.583
Slava befindet sich auf einem aufstrebenden Ast
Standard

was hat die Code in der präsentierter Klasse mit der Problembeschreibung zutun?

Code:
select INET_ATON('$ip') between INET_ATON(ip_ab) and INET_ATON( ip_bis)
__________________
Slava
bituniverse.com
Mit Zitat antworten
  #3 (permalink)  
Alt 25-02-2010, 14:40
Benutzerbild von onemorenerd onemorenerd
  Moderator
Links : Onlinestatus : onemorenerd ist offline
Registriert seit: Mar 2005
Ort: Berlin
Beiträge: 9.481
onemorenerd wird schon bald berühmt werdenonemorenerd wird schon bald berühmt werden
Standard

Die Funktion ip2long() kann mit deiner 1.2.3.xx-Notation nichts anfangen.
Mach es gleich per SQL wie Slava vorschlägt oder schau dir mal das an.
Mit Zitat antworten
  #4 (permalink)  
Alt 25-02-2010, 15:00
martinm79
 Registrierter Benutzer
Links : Onlinestatus : martinm79 ist offline
Registriert seit: Jan 2004
Ort: Deutschland
Beiträge: 744
martinm79 ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Zitat von Slava Beitrag anzeigen
was hat die Code in der präsentierter Klasse mit der Problembeschreibung zutun?

Code:
select INET_ATON('$ip') between INET_ATON(ip_ab) and INET_ATON( ip_bis)

Das vekürzt den Code natürlich enorm. Ich kannte die MySql Funktion noch nicht.


@onemorenerd Das mit dem xx am Ende war nur ein Beispeil. Ich wollte nicht meine IP veröffentlichen.

In der Zwischenzeit habe ich auch das gefunden:
Häufig benötigte Codeschnipsel - Wie kann ich prüfen, ob eine IP-Adresse in einem bestimmten Bereich liegt?

Daran lag wohl auch bei mir der Fehler. Ich muß das erst nochmal in Ruhe prüfen.
Vielen Dank vorab.
__________________
Gut geraten ist halb gewußt.
Mit Zitat antworten
  #5 (permalink)  
Alt 25-02-2010, 18:13
goth
  Moderator
Links : Onlinestatus : goth ist offline
Registriert seit: Mar 2002
Ort: Erde
Beiträge: 7.242
goth ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Hab ich was verpasst ... oder prüft man IP Bereiche heute nicht mehr über Masken?
__________________
carpe noctem

Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht!
Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung!

http://www.mysqldiff.org
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Überprüfen ob ein Bereich in einem Bereich liegt Daether PHP Developer Forum 7 12-02-2007 11:25
Login-Bereich newbie2oo6 Projekthilfe 3 20-06-2006 10:54
Überprüfen ob IP in bestimmtem IP Bereich liegt k00b0ld PHP Developer Forum 14 23-02-2005 23:23
Geschützter bereich Dave017 Appz und Script Gesuche 1 23-11-2002 23:19

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

MariaDB 5.5 veröffentlicht
MariaDB 5.5 veröffentlichtDie freie MySQL-Alternative MariaDB wurde in der stabilen Version 5.5.23 veröffentlicht und soll einige Verbesserungen gegenüber Oracles Communityversion von MySQL mitbringen.

16.04.2012 | Berni

Deutsche Yii Framework Community
Deutsche Yii Framework CommunitySeit dem 19.03.2012 gibt es für die Yii PHP Framework Community ein deutsches Zuhause.

20.03.2012 | dhcomputer

 

Aktuelle PHP Scripte

EM 2012 Tipp-Spiel ansehen EM 2012 Tipp-Spiel

Online Tipp-Spiel zur Fussball Europameisterschaft 2012, basierend auf php-Script mit hinterlegter mySql-Datenbank

27.05.2012 tippimnetz | Kategorie: PHP/ Spiele
Advanced Login ansehen Advanced Login

Login-System und Kundenverwaltung, die sich spielend leicht in bestehende Webseiten einbauen lässt und einen enormen Funktionsumfang bietet. Ihre eigene Webseite muss mit Advanced Login nicht umständlich an ein fertiges System angepasst werden.

25.05.2012 Madden | Kategorie: PHP/ Kundenverwaltung
BROM CMS/BelCal 3 ansehen BROM CMS/BelCal 3

Spezielles CMS für Betreiber von Ferienwohnungen. Komplette Seitenerstellung online, Verwaltung mehrerer Objekte, Reservierungssystem mit sofortigem Abgleich im Belegungskalender und vieles mehr bietet dieses Content Management System.

25.05.2012 belcal2 | Kategorie: PHP/ CMS
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 14:37 Uhr.