Wert einer Funktion ausgeben
Bernd
- mysqli
- php
Hallo,
seht ihr zufällig was ich falsch machen?
function Irreparable($mysqli, $artikelID){
$sql = "
SELECT a_id, SUM(avd_menge) AS `summe_Irreparable`
FROM artikel
LEFT JOIN artikel_verlust_defekt ON artikel_verlust_defekt.avd_aid = artikel.a_id
WHERE a_code=? AND avd_grund=10";
$res = $mysqli->prepare($sql);
$res->bind_param("s", $artikelID);
$res->execute();
$res->bind_result($summe_Irreparable);
$res->fetch();
$res->close();
return $summe_Irreparable;
}
Und die Ausgabe dann so
echo Irreparable($mysqli, $_GET['artikel']);
In der Ausgabe steht nichts bzw. wenn ich es mit var_dump ausgebe erhalte ich NULL
Im phpMyAdmin wenn ich dort folgendes ausführe erhalte ich den Wert, den ich auch erwarte
SELECT a_id, SUM( avd_menge ) AS `summe_Irreparable`
FROM artikel
LEFT JOIN artikel_verlust_defekt ON artikel_verlust_defekt.avd_aid = artikel.a_id
WHERE a_code = 'a196f40a4bdb40c6551a41cdd3910d53'
AND avd_grund =10
Was mache ich falsch?
Tach!
seht ihr zufällig was ich falsch machen?
Ich sehe es nicht, aber es muss so sein, dass du keine Fehlermeldungen auswertest oder anzeigen lässt, sonst würdest du sehen, was PHP zu diesem Code meinen hat.
dedlfix.
Hallo,
ich hatte
ini_set('display_errors', 0);
eingestellt. Hab es jetzt auf
ini_set('display_errors', 1);
gesetzt und erhalte folgende Meldung
Warning: mysqli_stmt::bind_result(): Number of bind variables doesn't match number of fields in prepared statement in
Jetzt sehe ich auch wo der Fehler ist, aus
SELECT a_id, SUM(avd_menge) AS `summe_Irreparable`
muss
SELECT SUM(avd_menge) AS `summe_Irreparable`
Hallo Bernd,
die Energie des Verstehens beginnt zu wirken 😉
Rolf
Hello,
das sind aber jetzt auch erst die php-seitigen Fehler der MySQLi-Schnittstelle. Wenn Du auch die echten Datenbankfehlermeldungen sehen willst, musst Du die auch abfragen und ggf. loggen lassen, damit Du sie auch im Betrieb zur Verfügung hast.
Im PHP-Log respektive Apache-Error-Log hättest du wahrscheinlich auch den anderen Fehler sehen müssen. Wenn Du auf deinem Linux-Konsolenbildschirm platz hast für ein Fenster, dann lass darin die Fehlerdatei kontinuierlich anzeigen während des Entwickelns:
>$ tail -fn 30 /var/log/apache2/error_log
oder wo dein error-log liegt...
Glück Auf
Tom vom Berg
Hallo,
mit einer Konsole kann ich bei meinem Webhoster leider oder zum Glück? nicht arbeiten.
Hi,
mit einer Konsole kann ich bei meinem Webhoster leider oder zum Glück? nicht arbeiten.
ob "leider" oder "zum Glück", liegt im Auge des Betrachters. Ich arbeite gern an der Konsole, aber nicht ausschließlich.
Davon unabhängig: Auf deinem lokalen Testsystem hast du doch hoffentlich alle Freiheiten.
So long,
Martin
Hello,
mit einer Konsole kann ich bei meinem Webhoster leider oder zum Glück? nicht arbeiten.
Du solltest dir ein lokales Testsystem einrichten. Wie ich selber gerade feststellen konnte, reicht dafür ein Raspberry Pi 3b+ für ca. 35€ zuzüglich Speicherkarte, vernünftigem Kühlkörper und Netzteil. Ein älterer Laptop tut es aber auch. Da spart man sich dann zusätzlichen Monitor, Maus und Tastatur.
Es lohnt sich auf jeden Fall, sich damit zu beschäftigen und insbesondere nicht auf dem Online-Webhost zu entwickeln. Das kann leicht in die Hose gehen!
Wie man ein solches Testsystem aufbauen kann, können wir Dir bei Bedarf weiterhelfen.
Glück Auf
Tom vom Berg
Hi,
Du solltest dir ein lokales Testsystem einrichten.
unbedingt, ja.
Wie ich selber gerade feststellen konnte, reicht dafür ein Raspberry Pi 3b+ für ca. 35€ zuzüglich Speicherkarte, vernünftigem Kühlkörper und Netzteil.
Ich habe bis jetzt nur mit Himbeeren der 2. Generation Erfahrungen gemacht, und ich finde, für Server-Anwendungen ohne GUI sind die auch völlig ausreichend. Ein System mit GUI ist dann aber schon grenzwertig; ich habe mal versucht, einen Pi als Video-Player einzusetzen. Aber das Ding konnte nicht einmal Videos in Standard-TV-Auflösung (oder DVD) ruckelfrei abspielen (von HD gar nicht zu reden), obwohl das Web voll von Behauptungen ist, dass das funktioniert.
Ein älterer Laptop tut es aber auch.
Ja. Oder eine VM, wenn man einen einigermaßen leistungsfähigen PC hat (egal ob Desktop oder Notebook).
Da spart man sich dann zusätzlichen Monitor, Maus und Tastatur.
Bei der VM auch.
Ciao,
Martin
Hello,
der Raspberry Pi 3b+ schafft HD-IP-TV. Allerdings muss man dringend einen großen Kühlkörper sauber aufsetzen.
Mit dem Standardkühlkörper aus dem Starterkit steigt die Temperatur beim Decoding vom HD-Stream auf über 75°C, mit dem abgebildeten bleibt sie auch ohne Ventilatorbetrieb unter 50°C. Mit Venti bei 3,3V (unhörbar) sinkt sie nochmal um ca. 3°.
Ich habe noch nicht den Hardware-Codec freigeschaltet. Der soll nochmal eine Menge bringen bei H264 und H265. Er kostet entweder ein paar Euro Lizenzgebühr oder man benutzt einen Patch. Ob der dann noch legal ist, weiß ich nicht.
Jedenfalls macht der kleine Proz mit seinen vier Kernen ganz schön Dampf.
Glück Auf
Tom vom Berg
n'Abend,
der Raspberry Pi 3b+ schafft HD-IP-TV. Allerdings muss man dringend einen großen Kühlkörper sauber aufsetzen.
auch beim Raspberry Pi 2 bringt dämmt ein kleiner Kühlkörper das Schwitzen schon deutlich ein. Ich hatte längere Zeit einen Pi 2 als Controller für ein NAS mit 4 USB-Festplatten in Betrieb. Ich weiß nicht mehr, welche Temperaturen der erreichte, aber es kam mir relativ viel vor. Dann habe ich den drei Chips je einen dafür zugeschnittenen Kühlkörper spendiert (gab's als Set für 1.45 bei amazon), und die Temperatur ging um fast 10° zurück.
Mit dem Standardkühlkörper aus dem Starterkit steigt die Temperatur beim Decoding vom HD-Stream auf über 75°C, mit dem abgebildeten bleibt sie auch ohne Ventilatorbetrieb unter 50°C. Mit Venti bei 3,3V (unhörbar) sinkt sie nochmal um ca. 3°.
Was denn, die Turbine bringt nur 3°C? Mehr nicht??
Ich habe noch nicht den Hardware-Codec freigeschaltet.
Ich auch nicht. Aber meine Videos sind auch überwiegend MPEG2 oder MPEG4-ASP (xvid), während MPEG4-AVC (x.264) bei mir bisher eher selten ist.
Er kostet entweder ein paar Euro Lizenzgebühr oder man benutzt einen Patch.
Oh. Das ist eine interessante Richtung! ;-)
Ciao,
Martin
Hello,
Ein älterer Laptop tut es aber auch.
Ja. Oder eine VM, wenn man einen einigermaßen leistungsfähigen PC hat (egal ob Desktop oder Notebook).
Die Himbeere hat allerdings den Vorteil, dass man sie eher durchlaufen lassen kann mit ihren ca. 1,5 bis 7W (je nach Last). Mit 'ner VMWare würde ich das nicht unbedingt wollen.
Da die Macke im letzten Fritz-OS (Pushservice neue IP) immer noch nicht behoben ist, leistet mir der Raspi da im Moment gute Dienste, alle zwei Minuten meine aktuelle Home-IP auf dem Webserver abzulegen.
Glück Auf
Tom vom Berg
Hallo Tom,
Ein älterer Laptop tut es aber auch.
Ja. Oder eine VM, wenn man einen einigermaßen leistungsfähigen PC hat (egal ob Desktop oder Notebook).
Die Himbeere hat allerdings den Vorteil, dass man sie eher durchlaufen lassen kann mit ihren ca. 1,5 bis 7W (je nach Last). Mit 'ner VMWare würde ich das nicht unbedingt wollen.
ja klar, aber es ging ja um ein Testsystem für Web-Geschichten, das muss man ja nicht 24/7 durchlaufen lassen.
Da die Macke im letzten Fritz-OS (Pushservice neue IP) immer noch nicht behoben ist, leistet mir der Raspi da im Moment gute Dienste, alle zwei Minuten meine aktuelle Home-IP auf dem Webserver abzulegen.
Oh. Solche Bugs habe ich mit AVM nicht erlebt.
Ciao,
Martin