hallo, ich hänge hier und komm nicht weiter
ich bin mir absolut sicher, das be der datenbankabfrage ein januar.jpg drin ist, hab es mir testweise ausgeben lassen.
also 100 pro ist da ein januar.jpg drinnen. nur warum findet er es in der in_array abfrage nicht.
was :puzzled:
$qry = "SELECT betreff FROM ".$prefix."_buchungen WHERE `module`='".$module_name."'AND `user_id`='".$uid."'";
$GLOBALS['res1'] = sql_query($qry);
if (in_array('januar.jpg', $GLOBALS['res1'])) {
echo "String gefunden!";
}
ich bekomme keine ausgabe
hoffe ihr könnt mir weiter helfen
gruß
thorsten
bekomme keine Ausgabe, was ist den bitte Falsch ich komme nicht drauf.
in der abfrage ist auf jedenfall januer.jpg enthalten. :red:
$januar = "januar.jpg";
$qry12 = "SELECT betreff FROM ".$prefix."_buchungen WHERE `module`='".$module_name."' AND `user_id`='".$uid."'";
$monate = array ();
while ($row = mysql_fetch_assoc($gry12)) {
$monate[] = $row["betreff"];
}
if (in_array($januar ,$monate[])) {
echo "wert gefunden";
}
Hallo,
also erstmal muß der zweite Parameter von in_array ein array sein, Du hast aber ein Array-Element angegeben.:
if (in_array($januar ,$monate))
sollte es heißen, glaub ich.
(Wie im ersten Beispiel in das Globals Array zu schreiben ist natürlich fragwürdig, so wie im zweiten Beispiel ist schonmal besser).
Dann bist Du Dir sicher, daß "januar.jpg" in einem Feld 'betreff' steht? Wenn nein, ggf. noch andere Felder selektieren und in die Suche einbeziehen.
Was die MySQL Abfrage betrifft bin ich da auch nicht so der Experte, vl. solltest Du aber besser mysql_fetch_row oder array nehmen (vl. könntest Du auch das Ergebniss $row direkt durchsuchen anstatt es erst in $monate zu schreiben...?
Probier mal aus...?!
mfg
Hoi ;)
Beim ersten Versuch steht in $GLOBALS['res1'] nur die Result-ID der DB-Abfrage drin, ergo kann der String "januar.jpg" nicht gefunden werden. Ein funktionierender Code wäre dieser:
<?php
$qry = "SELECT betreff FROM " . $prefix . "_buchungen WHERE module='" . $module_name . "' AND user_id=" . $uid . "";
$result = sql_query($qry);
while ($row = sql_fetch_array($result)) {
$betreff[] = $row[0];
}
if (in_array('januar.jpg', $betreff)) {
echo 'String gefunden!';
}
?>
Bei Deinem zweiten Versuch steht in der Fetch-Anweisung statt der Result-ID die Select-Anweisung drinne, ergo gibts ne Fehlermeldung von MySQL und wen wunderts, der String "januar.jpg" kommt darin ebenfalls nicht vor. ;)
Auch hier ein funktionierendes Codebeispiel:
<?php
$januar = 'januar.jpg';
$qry12 = "SELECT betreff FROM " . $prefix . "_buchungen WHERE module='" . $module_name . "' AND user_id = " . $uid . "";
$result = sql_query($qry12);
$monate = array ();
while ($row = sql_fetch_assoc($result)) {
$monate[] = $row['betreff'];
}
if (in_array($januar, $monate)) {
echo 'String gefunden!';
}
?>
Danke Danke
:gott:
funktioniert. juhu
muß mir jetzt nur in ruhe den code anschaun und schaun das ich meinen fehler sehe, begreife und mir merke.
Aber vielen vielen dank
Gruß
Thorsten
Bitte, bitte ;)
Zu DB-Abfragen bei MySQL - ich denke bei den meisten anderen DBs wird's ähnlich sein - besteht eine Abfrage immer aus zwei Schritten:
- Schritt 1:
Die "Auftragsvergabe" zur Ermittlung bestimmter Daten, allgem. Query genannt.
PHP-Funktion: mysql_query(...);
pragmaMx-Funktion: sql_query(...);
Dieser Query liefert als Ergebnis eine Result-ID (Ergebnis-ID) zurück, unter welcher MySQL das gefundene Ergebnis zwischengespeichert hat.
- Schritt 2:
Das Abholen der ermittelten Daten.
PHP-Funktion(en): mysql_fetch_.......(Result-ID);
pragmamx-Funktion(en): sql_fetch_.......(Result-ID);
Erst mit einer dieser Funktionen, die MySQL sagt, dass man die ermittelten Daten der Result-ID xy möchte, bekommt man die tatsächlichen Daten geliefert.
Hier nochmal ein allgemeines Beispiel, bezogen auf pragmaMx:
<?php
$result = sql_query("SELECT feldname1, feldname2 FROM tabellenname;"); // Ermittelt alle Daten in den angegebenen Feldern der Tabelle
while ($row = sql_fetch_row($result)) { // Zeilenweises Auslesen der ermittelten Daten in einer Schleife
echo $row[0]; // Ausgabe des Inhalts von feldname1
echo $row[1]; // Ausgabe des Inhalts von feldname2
}
?>
Mehr zu den PHP-Funktionen zur Abfrage einer MySQL-Datenbank, mit Erklärungen, findest Du im SelfPHP (http://www.selfphp.info/): http://www.selfphp.info/funktionsreferenz/mysql_funktionen/index.php
Weiter Infos zu MySQL finden sich natürlich auch im Handbuch: http://dev.mysql.com/doc/refman/5.1/de/
Zu welchen PHP-MySQL-Funktionen es Entsprechungen innerhalb von pragmaMx gibt kann mit einem Blick in die
/includes/sql_layer.php herausgefunden werden. ;)
Super besten Dank
Gruß
Thorsten