php.de

Zurück   php.de > Webentwicklung > PHP-Fortgeschrittene

PHP-Fortgeschrittene Arbeiten mit PHP ohne Einschränkungen

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 02.08.2005, 17:20  
Gast
 
Beiträge: n/a
Standard dyndns Script

Ich habe ja ein Script entwickelt, was Subdomains erlaubt zu registrieren. Nun da soll auch Dyn DNS druf gehn. Soweit so gut. Alles fertig

http://dantin.de/update.php?domain=d...sswd=blablabla

funktioniert als Update Domain.
Jetzt gebe ich dies bei dem Fritzbox Router ein mit den richtigen Angaben. Er aktualisiert dies zwar, zeigt dann aber immer als Fehlermeldung an:
Dynamic DNS-Fehler: Die Dynamic DNS-Aktualisierung war erfolgreich, anschließend trat jedoch ein Fehler bei der DNS-Auflösung auf.

Das Script lautet:
PHP-Code:
<?php
if(isset($ip) && isset($domain) && isset($passwd) && isset($uname))
{
 include 
"portal/config.php";
 include 
"portal/includes/sql_layer.php";
 
$dbi sql_connect($dbhost$dbuname$dbpass$dbname);
 
$prefix "nuke";
 
$user_prefix "nuke";
 global 
$setinfo$dbi;
 
$result sql_query("select pass, uid, storynum, umode, uorder, thold, noscore, ublockon, theme, commentmax from ".$user_prefix."_users where uname='$uname'"$dbi);
 
$setinfo sql_fetch_array($result$dbi);
 if ((
sql_num_rows($result$dbi)==1) AND ($setinfo[uid] != 1) AND ($setinfo[pass] != ""))
 {
  
$cryptpass md5($passwd);
  
$domaine=str_replace(".dantin.de","",$domain);
  
$query "select subdomain,uname,url,titel,art,time from $prefix"._subdomain." where subdomain='$domaine'";
  
$result mysql_query($query);
  
$hehe mysql_fetch_array($result);
  if (
strcmp ($domaine$hehe['subdomain']) != 0)
  {
   echo 
"Die Subdomain $domaine.$domain ist noch frei.";
   return 
FALSE;
   exit;
  }
  if(
$uname!=$hehe['uname'])
  {
   echo 
"Die Subdomain $domaine.$domain gehört nicht diesem User.";
   return 
FALSE;
   exit;
  }
  if (
$cryptpass == $setinfo[pass])
  {
   if(isset(
$www))
   {
    
mysql_query("update $prefix"._subdomain." set url='$www$ip' where subdomain = '$domaine'");
   }
   else
   {
    
mysql_query("update $prefix"._subdomain." set url='http://$ip' where subdomain = '$domaine'");
   }
   echo 
"Domain $domaine.dantin.de geupdated auf $www$ip!";
   return 
TRUE;
  }
  else
  {
   echo 
"Das Passwort ist nicht korrekt.";
   return 
FALSE;
   exit;
  }
 }
 else
 {
  echo 
"Das Passwort ist nicht korrekt.";
  return 
FALSE;
  exit;
 }
}
else
{
 echo 
"Es wurden nicht alle nötigen Informationen angegeben.";
 return 
FALSE;
 exit;
}

?>
Was muss man tun damit die Router erkennen, dass es aktualisiert wurde? Ich habe es beispielsweise mit return versucht, funktioniert auch nicht...


Gruß
summa imperii
  Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 03.08.2005, 16:35  
Waq
Erfahrener Benutzer
 
Registriert seit: 15.08.2004
Beiträge: 2.473
Waq
Standard

Zitat:
anschließend trat jedoch ein Fehler bei der DNS-Auflösung auf
Dein Script verändert keinen DNS-Eintrag, oder?
__________________
mod = master of disaster
Waq ist offline   Mit Zitat antworten
Alt 04.08.2005, 10:45  
Gast
 
Beiträge: n/a
Standard

Beispiel:
Ich gebe in der Fritz.box die Update URL mit den Infos an.
Diese ruft die nun auf mit der aktuellen DNS; das Script schreibt diese in die Datenbank was auch funktioniert, allerdings zeigt die Fritz.box trotzdem Fehler an, was bei dyndns.org usw nicht der Fall ist...
  Mit Zitat antworten
Alt 04.08.2005, 17:38  
Waq
Erfahrener Benutzer
 
Registriert seit: 15.08.2004
Beiträge: 2.473
Waq
Standard

Zitat:
Zitat von summa imperii
Diese ruft die nun auf mit der aktuellen DNS;
So, der Satz nochmal auf Deutsch?

Zitat:
Zitat von summa imperii
das Script schreibt diese in die Datenbank was auch funktioniert
Ja und was soll das in der DB bringen? Es muss schliesslich ein Nameserver upgedated werden, damit bei der Fritzbox was ankommt.
__________________
mod = master of disaster
Waq ist offline   Mit Zitat antworten
Alt 05.08.2005, 03:03  
Neuer Benutzer
 
Registriert seit: 05.08.2005
Beiträge: 13
zomed
Standard

Ich hab erst gedacht du updatest mit deinem Script einen DNS-Datenbankeintrag.
(Warum auch immer)

Aber jetzt verstehe ich, genauso wie mein vorredner wahrscheinlich,
gerade mal garnichts mehr.

Welchen Link gibst du der Fritzbox an? Den Link, damit die DB
geupdatet werden kann, oder Updatet die Fritzbox direkt den
DNS Namen.

Oder anders. Geht der DNS-Eintrag zuerst auf eine HP, welche
wiederum den von der Fritzbox eingetragenen bzw. die eingetragene
IP auf die Fritzbox weiterleitet.

Erklaer mal buedde. Ist immerhin auch noch interessant.
zomed ist offline   Mit Zitat antworten
Alt 05.08.2005, 18:06  
Gast
 
Beiträge: n/a
Standard

Joa ist schwer zu verstehen...
Also ich habe ein Script wo man sich eine Subdomain anmelden kann, genau wie bei beispielsweise dyndns.org .

Diese Subdomain kann man auch als Dyndns benutzen. Wenn man die Update URL mit der Fritz.box aufruft, wird mit dem Update Script ein Datenbank Eintrag geschrieben. Also beim Eintragen wird eine Adresse zum Weiterleiten benutzt, in dem Fall http://$ip .

Er updatet dann ja den Eintrag in der DB, aber die Fritz.box liefert als Statusmeldung ein Fehler zurück.

Beim Aufrufen der Subdomain wird der Datenbank Eintrag ausgelesen und dann jeweils weitergeleitet.

Verstanden? Hoffe ich doch -.-


Hier sind die Daten die ich in die Fritzbox eintrage:
Update URL: http://dantin.de/update.php?domain=<domain>&ip=<ipaddr>&uname=<user name>&passwd=<pass>
Domainname: dns.dantin.de
Benutzername: danielpeisker
Passwort: blablabla

Funktioniert alles prima die Datenbank wird geupdatet; trotzdem liefert die Fritzbox ein Fehler zurück was ich nicht verstehe!
  Mit Zitat antworten
Alt 05.08.2005, 21:34  
Waq
Erfahrener Benutzer
 
Registriert seit: 15.08.2004
Beiträge: 2.473
Waq
Standard

Zitat:
Zitat von summa imperii
wie bei beispielsweise dyndns.org
Die Hauptaufgabe von dyndns ist die Verwaltung ihrer Nameserver, also sicherzustellen, dass die für die Domain zuständigen Nameserver für die zu aktualisierende Subdomain auf die neue IP zeigen.

Wenn Du eine Nameserverabfrage machst (z.B. gethostbyname() in PHP oder "dig" auf der Kommandozeile), muss das die richtige IP liefern.

Zitat:
Zitat von summa imperii
Funktioniert alles prima die Datenbank wird geupdatet; trotzdem liefert die Fritzbox ein Fehler zurück was ich nicht verstehe!
Setz dich mal damit auseinander, was das Domain Name System ist und wie es das Internet zusammenhält, geh dann nochmal zurück ans Zeichenbrett, plane das ganze nochmal von vorne und dann solltest Du auch verstehen, warum ein Eintrag in deiner Datenbank die Fritzbox genausowenig interessiert wie wenn ich hier irgendwas in ne Datenbank eintrage.
__________________
mod = master of disaster
Waq ist offline   Mit Zitat antworten
Alt 05.08.2005, 22:23  
Gast
 
Beiträge: n/a
Standard

ok

aber funktionieren tut das ganze ja trotzdem... Eigentlich ruft die Fritz.box ja nur den Link auf; aber naja das andere wusst ich eben noch nicht.

thx
  Mit Zitat antworten
Alt 05.08.2005, 23:20  
Neuer Benutzer
 
Registriert seit: 05.08.2005
Beiträge: 13
zomed
Standard

Für mich hört sich das so an:

1. Der obige Link Updatet einen Datenbankeintrag. (Von einer Subdomain)

2. Diese Subdomain leitet nicht direkt auf die IP, sondern zuerst auf ein
PHP-Skript, welches wiederum auf die eingetragene IP in der Datenbank umleitet.

Richtig?

Aber das mit dem registrieren der Subdomains versteh ich immer noch net.
Meinste damit das Updaten der DB oder wirklich ein anlegen der Subdomain?
zomed ist offline   Mit Zitat antworten
Alt 05.08.2005, 23:57  
Gast
 
Beiträge: n/a
Standard

Zitat:
Zitat von summa imperii
aber funktionieren tut das ganze ja trotzdem...
Das funktiniert nicht wegen Deines Scriptes sondern nur deshalb, weil im Nameservereintrag von DynDns ein Catchall Record ist, der alle weiteren SubSubdomains, egal ob sie existieren, an Deine IP weiterleitet.
Zitat:
Eigentlich ruft die Fritz.box ja nur den Link auf;
Quatsch. Die Fritzbox ruft keine Links auf. Das ist einm popliger NAT Router, den Du etwas aufgebohrt hast, damit er das tut, was er sonst eigentlich bleiben lassen sollte: Anfragenm aus dem Inet ins lokale Netz durchlassen.

Ob sich Dein Apache allerdings angesprochen fühlt, hängt von der Konfiguration im Virtualhost ab:
servername deine-domain.de
serveralias *.deine-domain.de
Und schon beantwortet die Rothaut alle an *.deine-domain.de und Deine IP Port 80 gerichteten Anfragen.
  Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine 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
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Diverses aus meinem Apache Logs robo47 Server, Hosting und Workstations 5 25.05.2007 22:45
Script beendet sich ohne Fehlermeldung Zahl PHP Tipps 2006 6 04.06.2006 20:41
passwort script problem PHP Tipps 2006 8 15.02.2006 10:30
[Erledigt] php script und ixed PHP Tipps 2005-2 14 12.10.2005 13:34
[Erledigt] Verzögerung durch included Script? Umgehen? PHP Tipps 2005-2 4 10.07.2005 19:26
[Erledigt] Relay Script PHP-Fortgeschrittene 11 01.06.2005 16:02
[Erledigt] Hilfe bei Download Verwaltungs Script PHP Tipps 2005 8 04.05.2005 10:29
Fehler bei Script, welches Ordner erstellt PsychoEagle PHP Tipps 2005 3 23.04.2005 16:03
[Erledigt] python script mit php aufrufen... PHP-Fortgeschrittene 1 17.11.2004 17:11
PHP Script aus PHP aufrufen Stümper PHP Tipps 2004 5 26.09.2004 08:15
"das" Script oder "der" Script?? Simbo Off-Topic Diskussionen 31 16.09.2004 17:04
Script bricht mitten in einer while Schleife ab PHP Tipps 2004 5 11.07.2004 17:16

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
dyndns script, dyndns php, dyndns php script, php dyndns, dynamic dns-fehler: die dynamic dns-aktualisierung war erfolgreich, anschließend trat jedoch ein fehler bei der dns-auflösung auf., dyndns script php, php dyndns script, dyndns update php, fritzbox dyndns script, php dyn dns server, fritzbox dyndns php, php script dyndns, php dyndns update, ddns script, ddns php, dyndns skript, dynamic dns php script, die dynamic dns-aktualisierung war erfolgreich, anschließend trat jedoch ein fehler bei der dns-auflösung auf., dyndns mit php, fritzbox dynamic dns-fehler: die dynamic dns-aktualisierung war erfolgreich, anschließend trat jedoch ein fehler bei der dns-auflösung auf.

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




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.