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, 19:46
phpdblernen
 Registrierter Benutzer
Links : Onlinestatus : phpdblernen ist offline
Registriert seit: Sep 2014
Beiträge: 6
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, 19:54
h3ll
 Registrierter Benutzer
Links : Onlinestatus : h3ll ist offline
Registriert seit: Mar 2008
Beiträge: 3.742
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, 20: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 15:42
if schleife läuft nicht?!? petro_0 HTML, JavaScript, AJAX, jQuery, CSS, Bootstrap, LESS 9 20-05-2008 19:11
SChleife schleift nicht .... :( RealFairPlayer PHP Developer Forum 46 09-06-2006 16:50
[Variablen] Übergabe per URL funzt nicht, Schleife wird nicht angesprungen. mercurio PHP Developer Forum 11 04-12-2005 23:22
Abfrage nicht in schleife Viper1985 PHP Developer Forum 10 13-01-2003 13: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

SMT

Server Monitoring & Management Tool Das SMT wurde von einem Administrator für Administratoren entwickelt, es vereinfacht den Alltag in der klassischen Administration und Verwaltung. Mit dem SMT kannst Du alle Deine Server & Dienste verwalten und überwach

04.09.2020 palle_1977 | Kategorie: PHP
numaeks Web-Farbmixer

Die RGB-Farben lassen sich hier auf unterschiedliche Weise mischen. Zur Einstellung werden auch die Dreh- und Schieberegler mit Canvas verwendet. Gespeichert werden die Farben in einem Cookie.

04.09.2020 numaek | Kategorie: JAVASCRIPT/ Tools
phplinX-Erotikportal 4 ansehen phplinX-Erotikportal 4

Erweiterbares Portal speziell für Erotik mit den Modulen Webkatalog, Bannermanagement und Kleinanzeigenmarkt. Sämtliche Module können über einen einzigen Adminbereich verwaltet werden.

18.06.2020 Cosinus14 | Kategorie: PHP/ Anzeigenmarkt
 Alle PHP Scripte anzeigen

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