PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr

PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr (https://www.php-resource.de/forum/)
-   PHP Developer Forum (https://www.php-resource.de/forum/php-developer-forum/)
-   -   Abfrage, ob Eintrag Exestiert...??? (https://www.php-resource.de/forum/php-developer-forum/25466-abfrage-ob-eintrag-exestiert.html)

Geschan 03-09-2003 23:15

Abfrage, ob Eintrag Exestiert...???
 
Hallo,
ich habe ein Frage:
Und zwar würde ich gerne wissen, wie ich über PHP Abfragen kann, ob ein Eintrag mit einer bestimmten ID in einer Tabelle in meiner MySQL Datenbank existiert?
Ich hoffe hier kann mir jemand weiterhelfen.
Danke,
Geschan

Abraxax 03-09-2003 23:21

mache ein SELECT drauf. wenn nichts kommt [ mysql_num_rows() ], dann ist da nix.

goth 04-09-2003 00:00

... oder Du fragst die Datenbank direkt danach ...

SELECT COUNT(*) FROM tabelle WHERE ID = 'id'

... das ist, so ein Index auf ID liegt, erheblich kürzer ... weil nicht auf das Datenfile sondern lediglich auf den Index zugegriffen wird ... und zudem nicht der Datensatz himself an das Script übermittelt wird ... was beispielsweise bei größeren TEXT-Typen immense Kosten verursacht ...

Geschan 04-09-2003 00:19

Erstmal danke für die schnelle Hilfe, aber...

....beide Vorschläge sind in meinem Fall nutzlos....denke ich mal.... ;)

Und zwar ist das so, ich möchte aus einer DB-Tabelle eine reihe von Usern rausladen, und dann in einer zweiten Tabelle überprüfen, ob detail Informationen zu diesen vorhanden sind.
Also möchte ich, dass das Script, bei der Aufstellung der User Liste, immer überprüft, ob die ID des Users, mit einer ID der Detail Tabelle übereinstimmt, und dementsprechend einen weiteren Link setzt.

Ich hoffe, ihr versteht mein Anliegen jetzt besser....;)

Gruß,
Geschan

mrhappiness 04-09-2003 00:24

o tempera, o mores

warum schreibst du nicht gleich was du willst?

such mal im sql-forum nach JOINs (LEFT JOIN, RIGHT JOIN, INNER JOIN) da findest du garantiert was

goth 04-09-2003 00:49

Insbesondere der INNER JOIN könnte Dein Freund werden ... da die Daten der MasterTabelle (erste Tabelle) nur angezeigt werden wenn Details vorhanden sind (zweite Tabelle) ... interessiert nur die Anzahl oder ob ein DetailDatensatz vorhanden ist könnte man außerdem Gruppieren (mit GROUP BY) ... :teach:

Geschan 04-09-2003 01:28

Kann mir das vielleicht jemand genauer erläutern???
Da ich noch recht wenig Erfahrungen mit PHP habe und sozusagen noch recht nah am Anfang stehe.

Um genau zu sein, geht es um diese Liste: http://rs-wor.ilo.de/?site=lehrer
Da möchte ich in einer extra Tabelle, Details zu den einzelnen Persohnen abspeichern und wenn Details zu der Person verfügbar sind, würde ich gerne einen extra Button anzeigen lassen. (Das selbe im Adminbereich, bloss das dort der 'Details erstellen' Link, den 'Details bearbeiten'&'Details löschen' Links weichen muss, wenn schon ein Eintrag in der Datenbank besteht.)

Kann mir das jemand dann so erklären, dass ich das als Leihe auch verstehe```??? Denn vielles lasse ich mir von Dreamweaver MX automatisch generieren und deshalb fehlt mir noch etwas die Praxis in den Feinheiten...

Danke,
Geschan

Geschan 04-09-2003 12:15

Hallo????

Abraxax 04-09-2003 12:42

huhu?????

schaue doch einfach ins manual. die links hat goth gepostet.

Geschan 04-09-2003 12:48

Ich habs mir ja angeschaut, aber ich kapiere es nicht :(

Geschan 05-09-2003 00:52

Wirklich keiner da, der mir helfen kann und/oder will??? :(

mrhappiness 05-09-2003 08:58

SELECT
FROM tabelle1
LEFT JOIN tabelle2 ON tabelle1.id=tabelle2.qwertzu

liefert dir alle einträge aus tabelle1 und aus tabelle2 die einträge bei denen in der spalte qwertzu ein wert steht der auch in der spalte id von tabelle1 vorkommt

id: 1, 2, 3
qwertzu: 1, 3, 4
geliefert: 1, 2, 3

RIGHT JOIN geht von tabelle2 aus und würde dir 1, 3, 4 liefern

INNER JOIN liefert datensätze die in beiden tabellen vorkommen, hier: 1, 3

das war's in kürze, jetzt probierst du erstmal, wenn's nich hinhaut sagst du uns was du gemacht hast und dann schauen wir weiter

Geschan 05-09-2003 11:48

Super....vielen dank, ich denke jatzt hab ich verstanden ;)

Werde es gleich mal ausprobieren

[EDIT]
es gibt gleich ein Problem am anfang, und zwar gibt er folgenden Fehler aus:
Zitat:

You have an error in your SQL syntax near 'INNER JOIN l_liste_detail ON l_liste.id = l_liste_detail.id' at line 2
so hab ich den Code geschrieben:
PHP-Code:

mysql_select_db($database_RS_WOR$RS_WOR);
$query_rsDetailnew "SELECT * FROM l_liste ORDER BY name ASC 
INNER JOIN l_liste_detail ON l_liste.id = l_liste_detail.id"
;
$rsDetailnew mysql_query($query_rsDetailnew$RS_WOR) or die(mysql_error());
$row_rsDetailnew mysql_fetch_assoc($rsDetailnew);
$totalRows_rsDetailnew mysql_num_rows($rsDetailnew); 


Abraxax 05-09-2003 12:48

PHP-Code:

// deines
$query_rsDetailnew "SELECT * FROM l_liste ORDER BY name ASC 
INNER JOIN l_liste_detail ON l_liste.id = l_liste_detail.id"
;


// korrekter syntax
$query_rsDetailnew "SELECT    *
                      FROM      l_liste
                                  INNER JOIN l_liste_detail ON l_liste.id = l_liste_detail.id
                      ORDER BY  name ASC"



Geschan 05-09-2003 14:10

vielen dank...da hab ich woll ein paar dinge falsch plaziert :rolleyes:

Ich weis, dass ich höchst wahrscheinlich super doffe fragen stelle, aber ich kenne mich ja noch nicht so aus ;)...

ok, jetzt habe ich die Daten, aber wie kann ich diese so einbauen, das bei jedem User der Liste abgefragt wird, ob es eine übereinstimmung gab oder nicht....

also genauergesagt möchte ich das so machen, das bei Usern, die Details haben ein Button angezeigt wird, und bei Usern die keinen haben ein anderer, aber es sollen trozdem alle User angezeigt werden....


Alle Zeitangaben in WEZ +2. Es ist jetzt 12:18 Uhr.

Powered by vBulletin® Version 3.8.2 (Deutsch)
Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.3.0
[c] ebiz-consult GmbH & Co. KG