SQL Tabellenupdate funktioniert nicht

PHP-Fan

Erfahrenes Mitglied
Hallo.

Also die richten Daten werden übergeben aber er Updatet die Tabelle einfach nicht.

popup.php

PHP:
<form action="sl_check.php" method="post">
<input type="hidden" name="link" value="<? echo $ausgabe_link[link]; ?>">
<input type="hidden"  name="id"  value="<? echo $ausgabe[id]; ?>">
<b><input name="abschicken" type="submit" value="Neue Seeder/Leecher Werte ermitteln" style="background-color: #b6b6b6; border: 0px solid #000000; font-family: Verdana; font-size: 9px; color: #000000;"></b>
</form>

sl_check.php

PHP:
<?

function pathurlencode($uri) {
        $uri = urlencode($uri);
        $uri = str_replace('%3A', ':', $uri);
        $uri = str_replace('%2F', '/', $uri);
        $uri = str_replace('%26', '&', $uri);
        $uri = str_replace('%40', '@', $uri);
        $uri = str_replace('%3A', ':', $uri);
        $uri = str_replace('%3F', '?', $uri);
        $uri = str_replace('%3D', '=', $uri);
        $uri = str_replace('%5B', '[', $uri);
        $uri = str_replace('%5D', ']', $uri);
        return $uri;
    }

require("BDecodex.php");
require("BEncodex.php");

$dlid = $_POST['id'];
$dllink = $_POST['link'];

$stream = file_get_contents($dllink);

$array = BDecode($stream);

$infovariable = $array["info"];
$infohash = sha1(BEncode($infovariable));

$announce = $array["announce"];
$announce = strtolower($announce);
if (substr($announce, 0, 7) === "http://"){
if ((substr_count($announce, "/announce")) == 1){
$scrape = str_replace('/announce', '/scrape', $announce);
$httpget = "?info_hash=";
$binsha1 = pack("H*", $infohash);
$binsha1s = addslashes($binsha1);

$decoded = BDecode($stream);

//

if (isset($array["announce"])){
$announce = $array["announce"];
// Possibly HtTp://
$announce = strtolower($announce);
if (substr($announce, 0, 7) === "http://"){
if ((substr_count($announce, "/announce")) == 1){
$scrape = str_replace('/announce', '/scrape', $announce);
$httpget = "?info_hash=";
$binsha1 = pack("H*", $infohash);
$binsha1s = addslashes($binsha1);
$fullurl = "$scrape$httpget$binsha1";
$httpurl = pathurlencode($fullurl);
$torrentsize = "";
sapeerconnect($httpurl, $binsha1s, $torrentsize);
}  else {
$error = "<BR>Bad Tracker URL for scraping (Maybe trackerless torrent)." ;
echo $error;
}
}
else {
$error = "<BR>Bad Tracker URL for scraping (Maybe trackerless torrent)." ;
echo $error;
}
}
}
}

function sapeerconnect($httpurl, $binsha1s, $torrentsize) {
   // Code from yabtuc-0.4.1
$fp = fopen($httpurl, "rb");
$stream = "";
        if ($fp) {
            while( !feof( $fp ) ) {
                $stream .= @fread($fp, 128);
}
}
fclose($fp);


if($fp === FALSE){
$error = "<BR>No Response From Tracker. Please Try Again." ;
echo $error;
}
else{

$decoded = BDecode($stream);
if ($decoded["files"] === TRUE) {
$error = "<BR>File not present on tracker (torrent may be dead).";
echo $error;
}
else
{

$files = $decoded['files'];
$sha1tor = $files[$binsha1s];

}

$seeder = $sha1tor['complete'];
$leecher = $sha1tor['incomplete'];
$peers = $sha1tor['complete'] + $sha1tor['incomplete'];

echo $seeder."/";
echo $leecher;

$dlid = $_POST['id'];

require("configx.php");

$dbverbindung = mysql_connect($server, $user, $password);
$dbopen = mysql_select_db($dbname);
$dbanfrage = "UPDATE cm_dl_info SET seeder = '$seeder', leecher = '$leecher'  WHERE id = '$dlid'";
echo $dbanfrage;

mysql_query($dbanfrage)or die(mysql_error());

}
}



?>

<font color="grey" size="1"><a href="http://www.blabla.de/popup.php?id=<? echo $dlid; ?>">Klicken sie hier, wenn keine Weiterleitung erfolgt</a></font>

Er macht das Update einfach nicht. Gibt aber auch keine Fehlermeldung aus.
Wenn ich mir die $dbanfrage ausgebe, ist auch alles so wie es soll (die Felder Seeder und Leecher sind gefüllt) aber er updatet einfach nicht. Hier ein Beispiel, wie die Ausgabe aussieht:

65/574UPDATE cm_dl_info SET seeder = '65', leecher = '574' WHERE id = '19465' Klicken sie hier, wenn keine Weiterleitung erfolgt
 
Also so ganz spontan fällt mir das

[/b]

hinter der query auf..... das müsste normalerweise dazu führen:

Parse error: syntax error, unexpected '[' in .....

aktiviere mal alle Fehlermeldungen.
PHP:
error_reporting(E_ALL);

Das sollte das Problem sein soweit ich sehe...

Hinter einem ; darf eigendlich nichts mehr stehen weil die Anweisung ja damit beendet ist.
 
Wieso formatierst du den Quellcode nicht erst einmal. So haben du und wir eine viel bessere Übersicht über den Quellcode
 
bluex hat gesagt.:
Also so ganz spontan fällt mir das

[/b]

hinter der query auf..... das müsste normalerweise dazu führen:

Parse error: syntax error, unexpected '[' in .....

aktiviere mal alle Fehlermeldungen.
PHP:
error_reporting(E_ALL);

Das sollte das Problem sein soweit ich sehe...

Hinter einem ; darf eigendlich nichts mehr stehen weil die Anweisung ja damit beendet ist.

Also an dem [/b] wird es nicht liegen, da ich diese Zeilen eigentlich Fett makieren wollte, geht in einem PHP Code aber nicht - also einfach wegdenken ;)

Fehlermeldungen werden keine Ausgegeben!

Gumbo hat gesagt.:
Wieso formatierst du den Quellcode nicht erst einmal. So haben du und wir eine viel bessere Übersicht über den Quellcode

In wie fern soll ich das formatieren? Ist doch in einen PHP Code gepackt?
 
Hi

Also das mit dem [/b] geht einfach nicht. Des ist kein php und da wird sich der phpinterpreter mit einem Parseerror zu wort melden.

Auf einigen Servern sind nich alle Fehlermedungen aktiviert, weshalb man am Anfang es Scriptes
PHP:
error_reporting(E_ALL);
setzen sollte.




Mit dem Formatieren meinte Gumbo, dass der Code ordentlich eingerückt werden sollte. Das hat einfach den Sinn, dass man schneller einen Überblück über den codeablauf bekommt.

Es sollte dann so aussehen:

PHP:
<?

function pathurlencode($uri) {
        $uri = urlencode($uri);
        $uri = str_replace('%3A', ':', $uri);
        $uri = str_replace('%2F', '/', $uri);
        $uri = str_replace('%26', '&', $uri);
        $uri = str_replace('%40', '@', $uri);
        $uri = str_replace('%3A', ':', $uri);
        $uri = str_replace('%3F', '?', $uri);
        $uri = str_replace('%3D', '=', $uri);
        $uri = str_replace('%5B', '[', $uri);
        $uri = str_replace('%5D', ']', $uri);
        return $uri;
    }

require("BDecodex.php");
require("BEncodex.php");

$dlid = $_POST['id'];
$dllink = $_POST['link'];

$stream = file_get_contents($dllink);

$array = BDecode($stream);

$infovariable = $array["info"];
$infohash = sha1(BEncode($infovariable));

$announce = $array["announce"];
$announce = strtolower($announce);
if (substr($announce, 0, 7) === "http://"){
	if ((substr_count($announce, "/announce")) == 1){
		$scrape = str_replace('/announce', '/scrape', $announce);
		$httpget = "?info_hash=";
		$binsha1 = pack("H*", $infohash);
		$binsha1s = addslashes($binsha1);
		
		$decoded = BDecode($stream);
		
		//
		
		if (isset($array["announce"])){
			$announce = $array["announce"];
			// Possibly HtTp://
			$announce = strtolower($announce);
			if (substr($announce, 0, 7) === "http://"){
				if ((substr_count($announce, "/announce")) == 1){
					$scrape = str_replace('/announce', '/scrape', $announce);
					$httpget = "?info_hash=";
					$binsha1 = pack("H*", $infohash);
					$binsha1s = addslashes($binsha1);
					$fullurl = "$scrape$httpget$binsha1";
					$httpurl = pathurlencode($fullurl);
					$torrentsize = "";
					sapeerconnect($httpurl, $binsha1s, $torrentsize);
				}  else {
					$error = "<BR>Bad Tracker URL for scraping (Maybe trackerless torrent)." ;
					echo $error;
				}
			}
			else {
				$error = "<BR>Bad Tracker URL for scraping (Maybe trackerless torrent)." ;
				echo $error;
			}
		}
	}
}

function sapeerconnect($httpurl, $binsha1s, $torrentsize) {
   // Code from yabtuc-0.4.1
	$fp = fopen($httpurl, "rb");
	$stream = "";
	if ($fp) {
		while( !feof( $fp ) ) {
			$stream .= @fread($fp, 128);
		}
	}
	fclose($fp);
	
	
	if($fp === FALSE){
		$error = "<BR>No Response From Tracker. Please Try Again." ;
		echo $error;
	}
	else{
	
		$decoded = BDecode($stream);
		if ($decoded["files"] === TRUE) {
			$error = "<BR>File not present on tracker (torrent may be dead).";
			echo $error;
		}
		else
		{
		
			$files = $decoded['files'];
			$sha1tor = $files[$binsha1s];
		
		}
		
		$seeder = $sha1tor['complete'];
		$leecher = $sha1tor['incomplete'];
		$peers = $sha1tor['complete'] + $sha1tor['incomplete'];
		echo $seeder."/";
		echo $leecher;
		
		$dlid = $_POST['id'];
		
		require("configx.php");
		
		$dbverbindung = mysql_connect($server, $user, $password);
		$dbopen = mysql_select_db($dbname);
		$dbanfrage = "UPDATE cm_dl_info SET seeder = '$seeder', leecher = '$leecher'  WHERE id = '$dlid'";
		echo $dbanfrage;
		
		mysql_query($dbanfrage)or die(mysql_error());
	}	
}




?>

<font color="grey" size="1"><a href="http:


MfG
blueX
 
bluex

dieses E-ALL habe ich ja eben eingebaut. Kommt trotzdem kein Fehler.
Den [ /b ] habe ich hier im FORUM dazu getan. In Wirklichkeit gibt es das nicht. Ich wollte das HIER Fatblich hervorheben ;)
 
achsoooo ^^

Gumbo des schaut aus wie ein Teil einer Torrentseite..... zum Anzeigen von Torrentfiles und den seedern und leechern.

Aber warum die SQLabfrage nich geht seh ich eigendlich auch nicht..... hast mal überprüft ob es die id die da gesucht wird überhaupt gibt?


mfg
blueX
 

Neue Beiträge

Zurück