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
|
:: Anbieterverzeichnis ::
Globale Branchen
Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP
:: Newsletter ::
Abonnieren Sie hier den kostenlosen
SELFPHP Newsletter!
|
MySQLi/PDO/(MySQL) Anfänger, Fortgeschrittene oder Experten können hier Fragen und Probleme rund um MySQLi/PDO/(MySQL) diskutieren |
06.09.2004, 16:46:05
|
Junior Member
|
|
Registriert seit: May 2003
Beiträge: 201
|
|
Not unique table/alias...
Fehlermeldung: Not unique table/alias: 'wb_tips'
weis einer warum die fehlermeldung kommt? ich vermute es liegt am AND oder so, hoffe es kann mir einer weiterhelfen...
PHP-Code:
$query = mysql_query("SELECT
wb_games.id,
wb_games.category,
wb_games.a,
wb_games.b,
wb_games.starttime,
wb_games.endtime,
wb_games.status,
wb_tips.userid,
wb_tips.gameid
FROM
wb_games,
wb_tips
LEFT JOIN
wb_tips ON (wb_tips.userid = $userid AND
wb_tips.gameid = wb_games.gameid )
WHERE
wb_games.status = 1
ORDER BY
wb_games.endtime
DESC;") or die(mysql_error());
|
06.09.2004, 17:14:51
|
Member
|
|
Registriert seit: Apr 2003
Ort: 49.54, 8.35 - 3./9
Beiträge: 878
|
|
Die Struktur der Tabellen wäre interessant...
und ...
LEFT JOIN
wb_tips ON (wb_tips.userid = $userid AND
wb_tips.gameid = wb_games.gameid )
... das kommt mir komisch vor.
|
06.09.2004, 17:16:36
|
Junior Member
|
|
Registriert seit: May 2003
Beiträge: 201
|
|
Tabelle wb_tips:
PHP-Code:
#
# Tabellenstruktur für Tabelle `wb_tips`
#
CREATE TABLE `wb_tips` (
`id` int(11) unsigned NOT NULL auto_increment,
`userid` int(11) unsigned NOT NULL default '0',
`gameid` int(11) unsigned NOT NULL default '0',
`team` varchar(100) NOT NULL default '',
`points` int(11) unsigned NOT NULL default '0',
`time` int(11) unsigned NOT NULL default '0',
PRIMARY KEY (`id`)
) TYPE=MyISAM AUTO_INCREMENT=5 ;
#
# Daten für Tabelle `wb_tips`
#
INSERT INTO `wb_tips` (`id`, `userid`, `gameid`, `team`, `points`, `time`) VALUES (1, 1, 1, 'OTw', 3, 1094471361),
(2, 25, 1, 'mTw', 3, 1094471595),
(3, 81, 1, 'mTw', 1, 1094471626),
(4, 81, 3, 'esu', 1, 1094472553);
Tabelle wb_games
PHP-Code:
#
# Tabellenstruktur für Tabelle `wb_games`
#
CREATE TABLE `wb_games` (
`id` int(11) unsigned NOT NULL auto_increment,
`category` int(11) unsigned NOT NULL default '0',
`massage` mediumtext NOT NULL,
`a` varchar(100) NOT NULL default '',
`b` varchar(100) NOT NULL default '',
`starttime` int(11) unsigned NOT NULL default '0',
`endtime` int(11) unsigned NOT NULL default '0',
`status` int(11) unsigned NOT NULL default '0',
PRIMARY KEY (`id`)
) TYPE=MyISAM AUTO_INCREMENT=4 ;
#
# Daten für Tabelle `wb_games`
#
INSERT INTO `wb_games` (`id`, `category`, `massage`, `a`, `b`, `starttime`, `endtime`, `status`) VALUES (1, 1, 'Das ist eine Test Wette', 'OTw', 'mTw', 1094471238, 1094471238, 1),
(2, 1, 'Das ist eine weitere Testwette', 'mousesports', 'mTw', 1094472025, 1094472025, 1),
(3, 1, 'Das ist eine weitere Testwette', 'esu', 'otw', 1094472050, 1094472050, 1);
|
06.09.2004, 17:20:59
|
Member
|
|
Registriert seit: Apr 2003
Ort: 49.54, 8.35 - 3./9
Beiträge: 878
|
|
Nur so aus dem Bauch heraus:
LEFT JOIN
wb_tips ON wb_tips.gameid = wb_games.gameid
WHERE
wb_tips.userid = $userid AND
wb_games.status = 1
Meinst Du vielleicht dies?
|
06.09.2004, 17:25:56
|
Junior Member
|
|
Registriert seit: May 2003
Beiträge: 201
|
|
immer noch der gleich fehler, aber da hast glaub ich so neben bei recht, das sollte doch in der where klausel, aber irgendwo ist noch ein fehler, habe im from das wb_tips entfernt ( da ich glaub bei JOIN soll/muss man es nicht machen sondern FROM wb_games reicht) jetzt kommt der fehler: Unknown column 'wb_games.gameid' in 'on clause'
also ich weis da überhauot nicht weiter :/
|
06.09.2004, 18:18:58
|
Junior Member
|
|
Registriert seit: May 2003
Beiträge: 201
|
|
ich habs fast :)
PHP-Code:
$query = mysql_query("SELECT
wb_games.id,
wb_games.category,
wb_games.a,
wb_games.b,
wb_games.starttime,
wb_games.endtime,
wb_games.status,
wb_tips.userid,
wb_tips.gameid
FROM
wb_games
LEFT JOIN
wb_tips ON (wb_tips.gameid = wb_games.id )
WHERE
(wb_games.status = 1) AND
(wb_tips.userid != $userid)
ORDER BY
wb_games.endtime
DESC;") or die(mysql_error());
mit dem quary gibt er mir nun 3 einträge aus, davon aber ein doppelt, das ist der eintrag wo $userid mit der gameid übereinstimmen, dafür fehlt aber einer wo in wb_tips kein eintrag zur passenden gameid ist :/ jetzt versteh ich nix mehr
EDIT: wenn ich den ON teil umkehre mit ! bekomme ich noch mehr ausgabe,
1x die wo ich eingetragen bin ( gameid1 )
2x die wo was in wb_tips eingetragen wurde aber nicht mit meiner userid ( gameid2 )
3x wo die gameid3 nicht in wb_tips vorkommt
mach "!" in mysql was anderes als in php?
EDIT
habs jetzt so gemacht:
PHP-Code:
$query = mysql_query("SELECT
id,
category,
a,
b,
starttime,
endtime,
status
FROM
wb_games
WHERE
status = 1
ORDER BY
endtime
DESC;") or die(mysql_error());
while($row = mysql_fetch_array($query)){
$querycheck = mysql_query("SELECT
gameid,
userid
FROM
wb_tips
WHERE
gameid = '".$row['id']."' AND
userid = '".$userid."'") or die(mysql_error());
if(mysql_num_rows($querycheck)==0) {
wollt den 2ten quary eigendlich vermeiden, vielleicht weis einer noch ne lösung, wurde mich freuen...
Geändert von joker (06.09.2004 um 19:03:07 Uhr)
|
06.09.2004, 19:40:57
|
Member
|
|
Registriert seit: Apr 2003
Ort: 49.54, 8.35 - 3./9
Beiträge: 878
|
|
Ich weiß zwar nicht, was Du herausbekommen willst, aber das hier sieht recht gut aus:
PHP-Code:
$query = mysql_query("SELECT
wb_games.id,
wb_games.category,
wb_games.a,
wb_games.b,
wb_games.starttime,
wb_games.endtime,
wb_games.status,
wb_tips.userid,
wb_tips.gameid
FROM
wb_games
LEFT JOIN
wb_tips ON (wb_tips.gameid = wb_games.id )
WHERE
(wb_games.status = 1) AND
(wb_tips.userid != $userid)
ORDER BY
wb_games.endtime
DESC;") or die(mysql_error());
Wenn Du hier jetzt noch das ! rausnimmst...
wb_tips.userid != $userid
sollte es klappen. Wenn Du jetzt doppelte Einträge bekommst, mußt Du ein GROUP BY mit reinnehmen, siehe mein Posting von gestern.
> ... dafür fehlt aber einer wo in wb_tips kein eintrag zur passenden gameid ist :/ jetzt versteh ich nix mehr
Ist doch klar: wenn kein passender Eintrag in einer der Tabellen drin ist, stimmt die ON-Bedingung ja nicht.
Geändert von Marilu (06.09.2004 um 19:43:48 Uhr)
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
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.
HTML-Code ist aus.
|
|
|
Alle Zeitangaben in WEZ +2. Es ist jetzt 18:21:08 Uhr.
|