anwendung von msql_fetch_row und mysql_fetch_field

Diskussionen und Austausch über die von FPDF bereitgestellten Methoden, Problemen bei der Anwendung etc.
Benutzeravatar
centauro
Benutzer
Beiträge: 39
Registriert: Mo 13. Okt 2008, 19:39

anwendung von msql_fetch_row und mysql_fetch_field

Beitragvon centauro » Di 10. Jun 2014, 01:38

Hallo liebe FPDF-Freunde,

ich habe ein kleines Problem in meiner PDF-Vorlage.

Ich habe eine Tabelle für meine Rechnungen mit sehr vielen Spalten.
Die Spaltennamen entsprechen den Positionen die letztlich in der Rechnung erscheinen sollen.

Einige davon enthalten Werte, andere nicht.

Ich möchte nun für die Erstellung meiner Rechnungen es mir sehr einfach machen und ganz einfach die Datenbank nach den Spaltennamen fragen anstatt sie selbst in einer Cell() odeur MultiCell() reinzklimpern.

Darüber hinaus möchte ich die Werte, die in den jeweiligen Spalten abfragen ob sie größer 0,00 sind.

Wenn ja, dann anzeigen, sonst nicht anzeigen.

In einer simplen PHP-Datei funktioniert es und ich erhalte eine sauber strukturierte Tabelle mit links dem Spaltennamen und rechts dem jeweiligen Wert.

Mit fpdf habe ich leider etwas Probleme.
Der Browser gibt immer folgenden Fehler aus:

1.)
Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result resource in C:\webserver\htdocs\KGS\includes\druckverwaltung_inc\pinvoice_pdf.php on line 194

2.)
Warning: mysql_free_result(): supplied argument is not a valid MySQL result resource in C:\webserver\htdocs\KGS\includes\druckverwaltung_inc\pinvoice_pdf.php on line 221

Scheinbar kommt fpdf nicht mit den Funktionen "mysql_fetch_row()" und mysql_free_result() klar.

Zudem kommt aber auch fpdf nicht mit der Funktion mysql_fetch_field() klar.

Mache ich etwas falsch??

Bitte um Hilfe!!!!

Hier der Code:

[PHP]
if (!$result) { $message = 'FEHLER:' . mysql_error();
return $message;
} else {

$i = 0;
while ($row[] = mysql_fetch_row($result)) {
$count = count($row);
$count = 60;
$y = 1;

while ($y < $count) {
$meta = mysql_fetch_field($result, $y);
$c_row = current($row);
if ($c_row="") {
} else {
$position = $meta->name;
$position = str_replace("_", " ", $position);
$positionswert = $c_row;

$pdf->Cell(35,7, $position, 0, 0,'L',0);
$pdf->Cell(80,7,":", 0, 0,'R',0);
$pdf->Cell(24,7,number_format($positionswert,2,',', ' '), 0, 0,'L',0);
$pdf->Cell(5,7,chr(128), 0, 0,'L',0);

$pdf->ln(7);
$pdf->MultiCell(0,7,$y, 0,'L',0);
}
next($row);
$y = $y + 1;
}
$i = $i + 1;
}
mysql_free_result($result);
}

mysql_close();
[/PHP]

Vielen Dank im Voraus und viele Grüße

supertramp
Erfahrener Benutzer
Beiträge: 1305
Registriert: So 19. Sep 2004, 15:51

Beitragvon supertramp » Di 10. Jun 2014, 17:06

Überprüfe mal, ob die Variablen überhaupt den erwarteten Inhalt haben:

[php]echo '<pre>'.print_r($variable, true).'</pre>';
exit();
[/php]

Das kannst du an jeder Stelle im Skript machen.
Die PDF-Ausgabe wird dadurch natürlich abgewürgt, es verschafft dir aber einen guten Einblick, ob in den Variablen wirklich die Werte stecken, von denen du aktuell ausgehst.
Fragen zu PHP?
1) Handbuch lesen: www.php.net
2) selbst probieren
3) google fragen
4) andere fragen: www.developers-guide.net
5) PHP-Tutorial - erste Schritte mit PHP

Hilfe in PHP/FPDF gesucht?
--> mykro.de

Benutzeravatar
centauro
Benutzer
Beiträge: 39
Registriert: Mo 13. Okt 2008, 19:39

Beitragvon centauro » Mi 11. Jun 2014, 11:18

Leider erhalte ich keine Ausgabe, ganz gleich wo ich die Zeile "echo '<pre>'.print_r($positionswert, true).'</pre>';
exit(); " einfüge.

Gleiches gilt für die Variable $position.

Merkwürdig ist eben das das Ergebnis in einem normalen php-file korrekt und schön formatiert ist.

supertramp
Erfahrener Benutzer
Beiträge: 1305
Registriert: So 19. Sep 2004, 15:51

Beitragvon supertramp » Mi 11. Jun 2014, 17:32

Und das gilt auch für die anderen Variablen?

Bist du ganz sicher, dass dieses (!) Skript korrekt mit der DB zusammenarbeitet und die gewünschten Daten liefert?

Ich denke, dass du hier ansetzen muss um zu debuggen.

Lass dir mit oben genannter Methode mal den sql-query darstellen und füge den in phpmyadmin ein und schaue, ob du das gewünschte Ergebnis bekommst.
Fragen zu PHP?
1) Handbuch lesen: www.php.net
2) selbst probieren
3) google fragen
4) andere fragen: www.developers-guide.net
5) PHP-Tutorial - erste Schritte mit PHP

Hilfe in PHP/FPDF gesucht?
--> mykro.de


Zurück zu „Programmierung“

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 5 Gäste