php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Sonstiges > Archiv / Trash
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


Archiv / Trash Hier findet ihr alles, was aus anderen Foren verschoben wurde, weil es inhaltlich in keines der anderen Foren passt.

 
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 12-09-2014, 20:46
phpdblernen
 Registrierter Benutzer
Links : Onlinestatus : phpdblernen ist offline
Registriert seit: Sep 2014
Beiträge: 1
phpdblernen befindet sich auf einem aufstrebenden Ast
Standard If schleife funktioniert nicht

guten abend
ich bin neu hier und habe bereits eine frage.

ich bin an einer domainsuche am bauen, soweit gehts, nun habe ich ein problem mit der if schleife.

Ich habe eine Abfrage aus einer DB. Die funktioniert, wenn ich sie zu oberst hin platziere. Platziere ich sie aber an die stelle wo jetzt "hier sllte xxxx stehen", so funktioniert der ganze script nicht mehr. kann mir ev. jemand sagen warum.

Ansicht des ergebnis http://test.sonne.goip.de/index.php

Preisabfrage:
PHP-Code:
$SQL0 "SELECT * FROM dsp where (dscode like '$tld')";
$SQL0R odbc_exec($conn$SQL0);
while(
$SQL0Z odbc_fetch_array($SQL0R)) 
{
echo 
$SQL0Z["dendung"];
echo 
$SQL0Z["dpreis"];

funktionierender script
PHP-Code:
<html><body><table border="0"><tr><td width="140">Domain</td><td width="70">Status</td><td>Info</td></tr>
<?php
include_once("servers.php");
$domain $_POST['domain'];
$tld $_POST['tld'];
$_DSN ="dbserver";
$_User "dbuser";
$_PW "dbpass";
$conn odbc_connect($_DSN$_User$_PW) or die("Verbindung fehlgeschlagen");
$SQL0 "SELECT * FROM dsp where (dscode like '$tld')";
$SQL0R odbc_exec($conn$SQL0);
while(
$SQL0Z odbc_fetch_array($SQL0R)) 
{
echo 
$SQL0Z["dendung"];
echo 
$SQL0Z["dpreis"];
}
if(!
headers_sent())
    
header("Content-Type: text/html; charset=UTF-8");
if(!isset(
$_SESSION))
    
session_start();
function 
check_domain($domain$tld$whoisserver)
{
    
$fp = @fsockopen($whoisserver43$errno$errstr5);
    if(!
$fp)
        return 
"<strong>Fehler</strong><br />".$errstr." (".$errno.")\n";
    else
    {
        if(
$tld != "de" && !preg_match("/^[a-zA-Z0-9-]*$/"$domain))
        {
            try
            {
                require_once(
"idna2.php");
                
$idn Net_IDNA2::getInstance();
                
$domain $idn->encode($domain);
            }
            catch(
Exception $e)
            {
                return 
"<strong>Fehler</strong><br />".$e->getMessage()."\n";
            }
        }
        
$flag "";
        if(
$tld == "de")
            
$flag "-T dn ";
        
fwrite($fp$flag.$domain.".".$tld."\r\n");
        
$string "";
        while(!
feof($fp))
            
$string .= fread($fp128);
        
fclose($fp);
        return 
$string;
    }
}
if(!
preg_match("/^[^_\.\/]{1,}$/"$domain))
    echo 
"<span class=\"error\">\nung&uuml;ltiger Domainname</span>\n";
else
{
    function 
print_domain($domain$tld$whoisservers)
    {
        global 
$limit_exceeded;
        
$status_free "not found|no match|nothing found|not have an entry|status: available|is free|status: free|no entries|no such domain";
        
$status_invalid "status: invalid|invalid pattern|not a valid domain|invalid request|not understand the query|";
        
$status_invalid .= "error for|invalid domain|invalid characters|idn unsupported|unassignable|currently restricted|not allowed|invalid parameter";
        
$status_limit "limit exceeded";

        
$string check_domain($domain$tld$whoisservers[$tld]);
        
preg_match_all("/Whois Server: (.*?)\n/i"$string$matches);
        if(isset(
$matches[1][0]) && trim($matches[1][0]) != "")
            
$string check_domain($domain$tld$matches[1][0]);
        if(
preg_match("/Fehler/"$string))
        {
            echo 
"<tr><td width=\"1400\">".$domain.".".$tld."</td><td width=\"70\" class=\"error\">Fehler</td>";
            echo 
"<td><a href=\"popup.php?tld=".$tld."\" onclick=\"window.open('popup.php?tld=".$tld."','Details','width=800,height=600,scrollbars=yes'); return false\">Details</a></td>";
            echo 
"</tr>\n";
            
$_SESSION['details'][$tld] = $string;
        }
        else
        {
            if(
preg_match("/".$status_free."/i"preg_replace("/\s\s+|\t/"" "$string)))
                echo 
"<tr><td width=\"140\">".$domain.".".$tld."</td><td width=\"70\"class=\"success\">ist frei!</td><td>\n";
                if (
$tld =='at') echo 'hier sollte at22.90 stehen';
            elseif(
preg_match("/".$status_invalid."/i"$string))
                echo 
"<tr><td width=\"140\">".$domain.".".$tld."</td><td width=\"70\" class=\"error\">ung&uuml;ltig</td></tr>\n";
            elseif(
preg_match("/".$status_limit."/i"$string))
            {
                echo 
"<tr><td width=\"140\">".$domain.".".$tld."</td><td width=\"70\" class=\"error\">Abfragelimit erreicht *</td></tr>\n";
                
$limit_exceeded true;
            }
            else
            {
                echo 
"<tr><td width=\"140\">".$domain.".".$tld."</td><td width=\"70\" class=\"error\">ist belegt</td><td>";
                echo 
"<a href=\"popup.php?tld=".$tld."\" onclick=\"window.open('popup.php?tld=".$tld."','Details','width=800,height=600,scrollbars=yes'); return false\">Inhaber ist</a>";
                echo 
"</td></tr>\n";
                
$_SESSION['details'][$tld] = "<pre>\n".$string."</pre>";
            }
        }
    }
    
$limit_exceeded false;
    echo 
"<table class=\"list\">\n";
    if(
$tld == "all")
    {
        foreach(
$whoisservers as $tld_ => $value)
            
print_domain($domain$tld_$whoisservers);
}
    else
        
print_domain($domain$tld$whoisservers);
    echo 
"</table>\n";
    if(
$limit_exceeded)
        echo 
"<span>(* Bitte versuchen Sie es in ein paar Minuten erneut)</span>\n";
}
?>
</table><body><html>

nicht funktionierender script
PHP-Code:
<html><body><table border="0"><tr><td width="140">Domain</td><td width="70">Status</td><td>Info</td></tr>
<?php
include_once("servers.php");
$domain $_POST['domain'];
$tld $_POST['tld'];
$_DSN ="dbserver";
$_User "dbuser";
$_PW "dbpass";
$conn odbc_connect($_DSN$_User$_PW) or die("Verbindung fehlgeschlagen");
if(!
headers_sent())
    
header("Content-Type: text/html; charset=UTF-8");
if(!isset(
$_SESSION))
    
session_start();
function 
check_domain($domain$tld$whoisserver)
{
    
$fp = @fsockopen($whoisserver43$errno$errstr5);
    if(!
$fp)
        return 
"<strong>Fehler</strong><br />".$errstr." (".$errno.")\n";
    else
    {
        if(
$tld != "de" && !preg_match("/^[a-zA-Z0-9-]*$/"$domain))
        {
            try
            {
                require_once(
"idna2.php");
                
$idn Net_IDNA2::getInstance();
                
$domain $idn->encode($domain);
            }
            catch(
Exception $e)
            {
                return 
"<strong>Fehler</strong><br />".$e->getMessage()."\n";
            }
        }
        
$flag "";
        if(
$tld == "de")
            
$flag "-T dn ";
        
fwrite($fp$flag.$domain.".".$tld."\r\n");
        
$string "";
        while(!
feof($fp))
            
$string .= fread($fp128);
        
fclose($fp);
        return 
$string;
    }
}
if(!
preg_match("/^[^_\.\/]{1,}$/"$domain))
    echo 
"<span class=\"error\">\nung&uuml;ltiger Domainname</span>\n";
else
{
    function 
print_domain($domain$tld$whoisservers)
    {
        global 
$limit_exceeded;
        
$status_free "not found|no match|nothing found|not have an entry|status: available|is free|status: free|no entries|no such domain";
        
$status_invalid "status: invalid|invalid pattern|not a valid domain|invalid request|not understand the query|";
        
$status_invalid .= "error for|invalid domain|invalid characters|idn unsupported|unassignable|currently restricted|not allowed|invalid parameter";
        
$status_limit "limit exceeded";
        
$string check_domain($domain$tld$whoisservers[$tld]);
        
preg_match_all("/Whois Server: (.*?)\n/i"$string$matches);
        if(isset(
$matches[1][0]) && trim($matches[1][0]) != "")
            
$string check_domain($domain$tld$matches[1][0]);
        if(
preg_match("/Fehler/"$string))
        {
            echo 
"<tr><td width=\"1400\">".$domain.".".$tld."</td><td width=\"70\" class=\"error\">Fehler</td>";
            echo 
"<td><a href=\"popup.php?tld=".$tld."\" onclick=\"window.open('popup.php?tld=".$tld."','Details','width=800,height=600,scrollbars=yes'); return false\">Details</a></td>";
            echo 
"</tr>\n";
            
$_SESSION['details'][$tld] = $string;
        }
        else
        {
            if(
preg_match("/".$status_free."/i"preg_replace("/\s\s+|\t/"" "$string)))
                echo 
"<tr><td width=\"140\">".$domain.".".$tld."</td><td width=\"70\"class=\"success\">ist frei!</td><td>\n";


//Hier sollte das Ergebnis der Preisabfrage stehen, pro Domainendungszeile

$SQL0 "SELECT * FROM dsp where (dscode like '$tld')";
$SQL0R odbc_exec($conn$SQL0);
while(
$SQL0Z odbc_fetch_array($SQL0R)) 
{
echo 
$SQL0Z["dpreis"];
}


            elseif(
preg_match("/".$status_invalid."/i"$string))
                echo 
"<tr><td width=\"140\">".$domain.".".$tld."</td><td width=\"70\" class=\"error\">ung&uuml;ltig</td></tr>\n";
            elseif(
preg_match("/".$status_limit."/i"$string))
            {
                echo 
"<tr><td width=\"140\">".$domain.".".$tld."</td><td width=\"70\" class=\"error\">Abfragelimit erreicht *</td></tr>\n";
                
$limit_exceeded true;
            }
            else
            {
                echo 
"<tr><td width=\"140\">".$domain.".".$tld."</td><td width=\"70\" class=\"error\">ist belegt</td><td>";
                echo 
"<a href=\"popup.php?tld=".$tld."\" onclick=\"window.open('popup.php?tld=".$tld."','Details','width=800,height=600,scrollbars=yes'); return false\">Inhaber ist</a>";
                echo 
"</td></tr>\n";
                
$_SESSION['details'][$tld] = "<pre>\n".$string."</pre>";
            }
        }
    }
    
$limit_exceeded false;
    echo 
"<table class=\"list\">\n";
    if(
$tld == "all")
    {
        foreach(
$whoisservers as $tld_ => $value)
            
print_domain($domain$tld_$whoisservers);
}
    else
        
print_domain($domain$tld$whoisservers);
    echo 
"</table>\n";
    if(
$limit_exceeded)
        echo 
"<span>(* Bitte versuchen Sie es in ein paar Minuten erneut)</span>\n";
}
?>
</table><body><html>
freelancermap.de - IT Projektvermittlung für Selbständige und Freiberufler
  #2 (permalink)  
Alt 12-09-2014, 20:54
h3ll
 Registrierter Benutzer
Links : Onlinestatus : h3ll ist offline
Registriert seit: Mar 2008
Beiträge: 3.668
h3ll befindet sich auf einem aufstrebenden Ast
Standard

Eine schöne Sicherheitslücke. Bitte informiere dich über SQL-Injections.

Halte dich außerdem an das EVA-Prinzip. Das heißt, dass HTML-Ausgaben vor der Verarbeitung (und dazu zählen auch Datenbankabfragen) nichts verloren haben.

Der Code ist eine reine Katastrophe. Überhaupt keine Struktur und wilde Funktionsdefinitionen mitten im Ablauf. Dazu auch noch Verwendung von globalen Variablen. Ich würde das ganze Teil kübeln und nochmal neu programmieren. Das ist überhaupt nicht mehr wartbar und eine Qual für jeden, der sich damit beschäftigt.
  #3 (permalink)  
Alt 12-09-2014, 21:40
wahsaga
  Moderator
Links : Onlinestatus : wahsaga ist offline
Registriert seit: Sep 2001
Beiträge: 25.236
wahsaga befindet sich auf einem aufstrebenden Ast
Standard

Der Grund, warum das Script „nicht mehr funktioniert“ dürften wohl in erster Linie die Syntaxfehler sein, die du reinbaust indem du einfach Code-Stücke „irgendwohin“ kopierst.
Wenn du Scripte anpassen willst, solltest du wenigstens die Grundlagen der Syntax beherrschen – sonst wird das nichts.


Außerdem: Crossposting ist unerwünscht

https://www.lima-city.de/thread/if-s...tioniert-nicht

*close* & *trash*
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
 

Lesezeichen


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

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Variable aus foreach-Schleife außerhalb der Schleife nicht verwendbar Tiafe PHP Developer Forum 4 30-06-2009 16:42
if schleife läuft nicht?!? petro_0 HTML, JavaScript, AJAX, jQuery, CSS, Bootstrap, LESS 9 20-05-2008 20:11
SChleife schleift nicht .... :( RealFairPlayer PHP Developer Forum 46 09-06-2006 17:50
[Variablen] Übergabe per URL funzt nicht, Schleife wird nicht angesprungen. mercurio PHP Developer Forum 11 05-12-2005 00:22
Abfrage nicht in schleife Viper1985 PHP Developer Forum 10 13-01-2003 14:38

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 aus.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

PHP Marktplatz-Software
PHP Marktplatz-SoftwareEs hat sich viel getan! Die neue Version 7.5.9 unserer PHP Marktplatz-Software ebiz-trader steht ab sofort zur Verfügung.

28.10.2019 | Berni

Die RIGID-FLEX-Technologie
Die RIGID-FLEX-TechnologieDie sogenannte "Flexible Elektronik" , oftmals auch als "Flexible Schaltungen" bezeichnet, ist eine zeitgemäße Technologie zum Montieren von elektronischen Schaltungen.

06.12.2018 | Berni


 

Aktuelle PHP Scripte

Microweber CMS

Open source, drag and drop website builder

13.01.2020 Berni | Kategorie: HTML5/ EDITOR
PhoneGap Apps mit JS, CSS3 und HTML5 erstellen ansehen PhoneGap Apps mit JS, CSS3 und HTML5 erstellen

PhoneGap, Framework zur Erstellung hybrider Applikationen für mobile Endgeräte.

13.01.2020 Berni | Kategorie: App-Entwicklung
Bo)Tickets

Bo)Tickets bietet Ihnen eine Schnittstelle für Kundenanfragen an. In dem Script definieren Sie Supportbereiche, also zum Beispiel „Technik, Buchhaltung, Support“. Ihre Kunden können dann über ein Formular eine Anfrage abschicken.

31.12.2019 bocombo | Kategorie: PHP/ Ticketsystem
 Alle PHP Scripte anzeigen

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