exitboy
Erfahrenes Mitglied
Hallo vorerst folgendes diese Fehlermeldung erschein. Ich habe den selben script vor einem Tag zum laufen bekommen. Bin mir aber nicht bewusst da was geändert zu haben:
**** ERROR MESSAGE [TEXTAUSGABE im BROWSER]*****
Warning: mysql_fetch_field(): supplied argument is not a valid MySQL result resource in /srv/www/htdocs/web1/html/testsrv/mysqldb.php on line 109
[record]
001;1;01;200630;00;1;0
Warning: mysql_fetch_field(): supplied argument is not a valid MySQL result resource in /srv/www/htdocs/web1/html/testsrv/mysqldb.php on line 109
[record]
002;3;01;200631;00;2;0
...
**** ERROR MESSAGE ENDE ****
Start.php:
In der Datenbank werdenkeine Zeilen eingetragt obwohl in der Datei selber 18 Zeilen sind. Jedoch werden aus der Datei alle Zahlen richtig ausgegeben.
Ausgegeben wird diese Fehlermeldung für alle 18.
Anbei die mysqldb.php:
**** ERROR MESSAGE [TEXTAUSGABE im BROWSER]*****
Warning: mysql_fetch_field(): supplied argument is not a valid MySQL result resource in /srv/www/htdocs/web1/html/testsrv/mysqldb.php on line 109
[record]
001;1;01;200630;00;1;0
Warning: mysql_fetch_field(): supplied argument is not a valid MySQL result resource in /srv/www/htdocs/web1/html/testsrv/mysqldb.php on line 109
[record]
002;3;01;200631;00;2;0
...
**** ERROR MESSAGE ENDE ****
Start.php:
Code:
<?php
include("mysqldb.php");
$fp = file("uploaded.txt");
foreach ($fp as $value)
{
list ($co, $fi, $ka, $da, $st, $an, $um) = split ('[;]', $value);
$db->echoquery("INSERT INTO testdb ('id', 'cis', 'fis', 'kas', 'das', sts', 'ans', 'ums') VALUES ('', $co, $fi, $ka, $da, $st, $an, $um)");
echo "$co, $fi, $ka, $da, $st, $an, $um<br />\n";
}
?>
In der Datenbank werdenkeine Zeilen eingetragt obwohl in der Datei selber 18 Zeilen sind. Jedoch werden aus der Datei alle Zahlen richtig ausgegeben.
Ausgegeben wird diese Fehlermeldung für alle 18.
Anbei die mysqldb.php:
Code:
<?php
// MySQL Klassendefinition
//
//
//
// Methoden:
// set_doerror($boolvalue))
// int connect()
// int query($sql)
// echoerror()
// array rowarray()
// echoquery($sql)
class mysql_db {
var $link = false;
var $resid = false;
var $doerror = false;
var $host = "localhost";
var $user = "notpublic";
var $passwd = "notpublic";
var $tables = "notpublic";
function set_doerror($boolvalue)
{
$this->doerror = $boolvalue;
}
function connect()
// Verbindet zur Datenbank
{
$temp = @mysql_connect
($this->host, $this->user, $this->passwd);
if (!$temp)
{
$this->echoerror();
return false;
}
$this->link = $temp;
$temp = @mysql_select_db($this->tables, $temp);
if (!$temp)
{
$this->echoerror();
return false;
}
return $this->link;
}
function query($sql)
// Sendet eine Anfrage an die Datenbank
{
if (!$this->link)
{
if ($this->doerror)
{
echo ("<b>Nicht verbunden.</b><br>");
return false;
}
}
if ($this->resid) @mysql_free_result($this->resid);
$result = mysql_query($sql, $this->link);
if (!$result) $this->echoerror();
$this->resid = $result;
return $result;
}
function echoerror()
// erzeugt eine Fehlerausschrift
// wenn $doerror=TRUE
{
if (!$this->doerror) return;
if (!mysql_errno()) return;
echo ("<font color=\"red\"><b>" . mysql_errno());
echo (": ". mysql_error() ." </b></font><br>");
}
function data()
// liefert einen Datensatz
{
if (!$this->link)
{
if ($this->doerror)
echo ("<b>Nicht verbunden!</b><br>");
return false;
}
if (!$this->resid)
{
if ($this->doerror)
echo ("<b>Keine Abfrage!</b><br>");
return false;
}
$result = mysql_fetch_array($this->resid, MYSQL_BOTH);
$this->echoerror();
return $result;
}
function echoquery($sql)
//Fragt die Datenbank ab und stellt die Abfrage dar
{
$this->query($sql);
echo("<table border cellpadding=\"3\"><tr>");
$index = 0;
echo("<th>record</th>");
while ($field = mysql_fetch_field($this->resid))
echo("<th>$field->name</th>");
echo ("</tr>\n");
$rec=0;
while ($row = $this->data())
{
$rec++;
echo("<tr><td>$rec</td>");
for ($i=0; $i<mysql_num_fields($this->resid); $i++)
echo("<td>".htmlentities($row[$i])." </td>");
echo("</tr>\n");
}
echo ("</table>");
}
/*
function set_doerror($boolvalue)
{
$this->doerror = $boolvalue;
}*/
function mysql_db()
// Construktor
{
$this->connect();
}
}
$db = new mysql_db;
?>
Zuletzt bearbeitet: