SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

PHP 5.3 & MySQL 5.1

PHP 5.3 & MySQL 5.1 zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > MySQL/MySQLi

MySQL/MySQLi Anfänger, Fortgeschrittene oder Experten können hier Fragen und Probleme rund um MySQL/MySQLi diskutieren

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 10.08.2007, 09:33:37
meandor meandor ist offline
Anfänger
 
Registriert seit: Aug 2007
Beiträge: 3
dynamische Unterabfrage in mysql

Hallo

Folgendes Problem tritt bei mir auf.

Ergebnis einer SQL Abfrage für Standorte ergibt zum Beispiel : 3, 4, 7, 10

wie kann ich jetzt dieses Ergebnis nutzen damit in meiner nächsten SQL Abfrage genau diese Zahlen wieder genutzt werden.

Habe versucht die Zahlen in einem Array zu speichern aber dann funktioniert die Abfrage nächste SQL Abfrage nicht.

Select id, standort, FROM liste WHERE standort = $ortids[] //also 3, 4, 7, 10

wie kann ich das lösen?

mit besten Grüßen
meandor

Geändert von meandor (10.08.2007 um 09:52:07 Uhr)
Mit Zitat antworten
  #2  
Alt 10.08.2007, 09:51:45
meandor meandor ist offline
Anfänger
 
Registriert seit: Aug 2007
Beiträge: 3
AW: dynamische Unterabfrage in mysql

Nachtrag:

Die Abfrage soll die Zahlen bekommen die ich in als Ergebnis vorher bekommen habe.
Irgendwie scheint aber das nicht über ein Array zu klappen er kontrolliert dann nicht alle Zahlen.

"Select id, standort, FROM liste WHERE standort = $ortids[]";

wenn ich konkret eine Zahl angebe funktioniert es. z.B.
"Select id, standort, FROM liste WHERE standort = 3";

wenn ich ein konkretes Element aus dem Array gebe dann auch: z.B
"Select id, standort, FROM liste WHERE standort = $ortids[2]";

was mache ich falsch????
Mit Zitat antworten
  #3  
Alt 10.08.2007, 09:57:41
Benutzerbild von Indyk
Indyk Indyk ist offline
Member
 
Registriert seit: Aug 2006
Ort: Lübeck
Alter: 35
Beiträge: 900
Indyk eine Nachricht über ICQ schicken
AW: dynamische Unterabfrage in mysql

das problem ist das bei sql wahrscheinlich
Code:
WHERE standaort = array()
ankommt, deshalb sollte man sich immer das statement ausgeben lassen.
Du musst schon einzelnd abfragen (mit AND) oder es mit einer php schleife lösen
Mit Zitat antworten
  #4  
Alt 10.08.2007, 10:06:25
meandor meandor ist offline
Anfänger
 
Registriert seit: Aug 2007
Beiträge: 3
AW: dynamische Unterabfrage in mysql

"Select id, standort, FROM liste WHERE standort = $ortids[0]" AND standort = $ortids[1] AND standort = $ortids[2]" usw......;

aber ich weiß ja halt nicht wie viele Element hinterher in dem Array sind deshalb wird das dann unübersichtilich und es gibt Fehlermeldungen sobald das Array kleiner ist als in der Abfrage.

Zum Schluss muss eine Anweisung stehen die der mysql_query($sql) übergeben wird.

Was muss ich tun????

Geändert von meandor (10.08.2007 um 10:13:01 Uhr)
Mit Zitat antworten
  #5  
Alt 10.08.2007, 12:16:19
Raketenmann Raketenmann ist offline
Junior Member
 
Registriert seit: Jun 2004
Beiträge: 473
AW: dynamische Unterabfrage in mysql

Zitat:
Zitat von meandor Beitrag anzeigen
"Select id, standort, FROM liste WHERE standort = $ortids[0]" AND standort = $ortids[1] AND standort = $ortids[2]" usw......;
Mit deinem Beispiel Array wird das da auf keinen Fall funktionieren. Keiner deiner Standorte wird gleichzeitig =3 und =4 sein...

Statt AND kann man auch OR verwenden, je nach Sinn

Zitat:
Zitat von meandor Beitrag anzeigen
aber ich weiß ja halt nicht wie viele Element hinterher in dem Array sind deshalb wird das dann unübersichtilich und es gibt Fehlermeldungen sobald das Array kleiner ist als in der Abfrage.
Dann kannst du das Array in einer Schleife durchlaufen und für jedes Element eine eigenen Query abschicken. Klingt vielleicht nicht besonders elegant, aber bei einer Liste die mal länger und mal kürzer ist...

Geändert von Raketenmann (10.08.2007 um 12:16:51 Uhr)
Mit Zitat antworten
  #6  
Alt 10.08.2007, 12:19:44
Benutzerbild von vt1816
vt1816 vt1816 ist offline
Administrator
 
Registriert seit: Jul 2004
Beiträge: 3.681
AW: dynamische Unterabfrage in mysql

PHP-Code:

$sql 
"SELECT id, standort FROM liste WHERE standort IN( $ortids[0], ...,  $ortids[n])"
sollte Dir weiterhelfen.
__________________
Gruss vt1816
Erwarte nicht, dass sich jemand mehr Mühe mit der Antwort gibt als Du Dir mit der Frage.
. . . . . Feedback wäre wünschenswert

Ich werde keinen privaten 1:1 Support leisten, außer ich biete ihn ausdrücklich an.
Ansosnten gilt: Hilfe ausserhalb dieses Thread (PN, WhatsApp, Skype, Mail, ICQ, etc...) nur per Barzahlung oder Vorauskasse!

Wenn man sich selbst als "Noob" bezeichnet, sollte man die Finger davon lassen.
Wenn man gewillt ist daran etwas zu ändern, lernt man Grundlagen!
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
MySQL starten kora MySQL/MySQLi 0 02.08.2007 11:12:59
Mysql startet nicht oberonal MySQL/MySQLi 3 24.11.2006 09:41:31
MySQL Page Script. Problem. dtone MySQL/MySQLi 8 15.10.2006 14:58:06
MYSQL via Apache (XAMPP) Access denied Christel MySQL/MySQLi 12 30.04.2005 08:55:42
MySQL - ORDER BY RAND() und PHP MacMarc PHP Grundlagen 15 05.12.2002 22:23:39


Alle Zeitangaben in WEZ +2. Es ist jetzt 22:25:49 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.


© 2001-2021 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt