[gelöst]mysql form fehler?
am 31.07.2015 - 12:30 Uhr in
Ich entwickel grade ein Modul wo eine MYSQL abfrage notwendig ist. Wenn ich die die abfrage allerdings ins Modul einbaue bekomme ich als Resultat lediglich eine komplett leere Seite. Die abfrage sieht so aus:
$oid = $order->order_id;
$result = db_query('SELECT txn_id, uid, points, operation, description
FROM userpoints_txn
WHERE entity_id = '.$oid.' AND status = 1' );
while ($row = db_fetch_object($result)) {
$params = array (
);
}Da ich lange nicht mehr mit mysql arbeiten musste(danke Drupal) gehe ich davon aus das ich einen Formfehler in der abfrage habe.Ich bin dankbar für jede Hilfe.
- Anmelden oder Registrieren um Kommentare zu schreiben

Hi,am besten Du postest mal
am 31.07.2015 - 13:07 Uhr
Hi,
am besten Du postest mal die ganze Funktion des Moduls.
Das nix ausgegeben wird wundert mich nicht bei diesem Beispiel.
Hier solltest Du doch etwas mit dem Resultat des queries machen also $row
stattdessen erstellst Du im loop ein leeres Array Namens $params ?
while ($row = db_fetch_object($result)) {
$params = array (
);
}
Um zu sehen ob der Query etwas ausgibt probier mal folgendes:
while ($row = db_fetch_object($result)) {
print_r($row);
}
Gruss
Robert
db_fetch_object() gibt es bei
am 31.07.2015 - 13:16 Uhr
db_fetch_object() gibt es bei Drupal 7 nicht mehr. Du solltest Dir die aktuelle API für Datenbankabfragen noch einmal ansehen.
Die Funktion funktioniert!
am 31.07.2015 - 13:20 Uhr
Die Funktion funktioniert! Ich hab sie extra rausgelassen damit der fehler nicht dadrinnen gesucht wird. Mit leerer Seite meine ich wirklich komplett leer (alles weiß kein template und keine fehlermeldungen). Das einzige was ausgeben wird sind print_r variablen. Die leere Seite kommt auch wenn ich den code von oben genau so einfüge. wen ich allerdings nur die funktion ausgebe funktioniert alles bestens.
print_r($rows) wird nicht
am 31.07.2015 - 13:30 Uhr
print_r($rows) wird nicht ausgegeben nur die print_r die vor der abfrage stehen werden ausgegeben
Danke das war der Fehler.
am 31.07.2015 - 13:38 Uhr
db_fetch_object() gibt es bei Drupal 7 nicht mehr. Du solltest Dir die aktuelle API für Datenbankabfragen noch einmal ansehen.wurde erstetz duch
foreach ($result as $record)Danke das war der Fehler.
Eine komplett leere Seite
am 31.07.2015 - 13:37 Uhr
Eine komplett leere Seite heißt: es ist ein PHP-Fehler aufgetreten. Was sagt denn der PHP-Error-Log?
Probiere mal das
am 31.07.2015 - 14:03 Uhr
$oid = $order->order_id;
$result = db_query('SELECT txn_id, uid, points, operation, description
FROM userpoints_txn utxn
WHERE entity_id = 'utxn.$oid.' AND status = 1' );
foreach($result as $record){
//hoffe Du hast devel module
dpm($record);
...
}
Wenn Du was spezielles willst, guckst Du hier: https://api.drupal.org/api/drupal/includes!database!database.inc/function/db_query/7
Sorry, habe jetzt erst gesehen dass es schon auf gelöst steht, na dann für andere ...