Demo

Probiere ClanSphere aus und teste daran herum. Demo


Antworten: 5
Seite [1]
hush


Beginner




Beiträge: 2
# Thema - 24.09.2007 um 20:26 Uhr
Guten Abend,

ich wollte eine kleine Änderung an den Clanwars vornehmen.
Standart ist es ja so : Unter Clanwars werden sowohl die noch zu spielenden, als auch die schon gespielten Matches ausgegeben.
Ändern möchte ich, dass alle schon gespielten Matches ausgegeben werden, nicht aber die noch zu spielenden.

Meiner Meinung nach müsste das alles in der list.php einstellbar sein ?
Insbesondere folgende Codeschnipsel habe ich Fokusiert :

 
1.
1. / 2. / ... 
<?php $wars_count cs_sql_count(__FILE__,'wars',$where); ?>

Nehme an dieser Schnippsel ist für das Zählen der Wars verantwortlich - poste ihn nur wegen der $where Variable...

 
1.
2.
3.
1. / 2. / ... 
<?php $cs_wars cs_sql_select(__FILE__,$from,$select,$where,$order,$start,$account['users_limit']);
.....
$count_wars count($cs_wars); ?>


Das hier müsste doch dann was mit der Ausgabe zutun haben, oder ? Hier auch wieder die $where Bedinung, d.H. ich müsste doch genau dort sagen :"Nimm nur die, die den wars_status 'upcoming' haben."

 
1.
1. / 2. / ... 
<?php $where = empty($squads_id) ? "squads_id = '" $squads_id "'"?>


Egal wie ich versuche die Bedinung dran zu bauen, es klappt einfach nicht. Das einzige was bei mir bisher geklappt hat ist, an den sql_count folgendes dranzu hängen :
 
1.
1. / 2. / ... 
<?php $wars_count cs_sql_count(__FILE__,'wars',$where,"wars_status !='upcoming'"); ?>

So klappt das dann auch, aber unten geht es eben nicht so einfach. Nun ist meine Vermutung das ich in der falschen .php rumfusche ?

Gruß


Zuletzt editiert von hush am 24.09.2007 um 20:26 Uhr (1x Editiert)
Inaktiv
duRiel ClanSphere Team


Weltmeister




Herkunft: Cambridge
Beiträge: 7300
# Antwort: 1 - 24.09.2007 um 22:16 Uhr
cs_sql_count.. das sagt doch schon alles, die funktion ist dazu da, um datensätze zu zählen. was da aus der rückgabe gemacht wird ist einfach nur das "Gesamt: xx".
ändern musst du die bedingung in der cs_sql_select funktion, bei deinem 2. codeteil.


Inaktiv
|
hush
Thread-Ersteller


Beginner




Beiträge: 2
# Antwort: 2 - 24.09.2007 um 23:22 Uhr
Ja, aber die cs_sql_select bezieht sich genau wie die cs_sql_count auf die $where Variable.
Ich bin leider nicht so gut in SQL, müsste nun folgende beiden Befehle zu einem zusammenführen - mit richtigem syntax - Kann das vll. jemand von euch ?

 
1.
2.
3.
4.
1. / 2. / ... 
<?php 
$befehl1 
= empty($squads_id) ? "squads_id = '" $squads_id "'";
$befehl2 "wars_status != 'upcoming'";
 
?>


Das dann zu einem, dann ist das Problem gelöst, danke schonmal !

Gruß


Inaktiv
|
duRiel ClanSphere Team


Weltmeister




Herkunft: Cambridge
Beiträge: 7300
# Antwort: 3 - 25.09.2007 um 00:33 Uhr
ich weiß nicht auswendig ob das die selben variablen sind, kann ja durchaus die $where variable nochmal neu definiert werden für den select befehl.

$befehl1 und $befehl2 zusammenführen:
 
1.
2.
3.
1. / 2. / ... 
<?php 
$befehl1 
= empty($squads_id) ? 'wars_status != \'upcoming\'' 'squads_id = \''.$squads_id.'\' AND wars_status != \'upcoming\'';
?>


Inaktiv
|
hush
Thread-Ersteller


Beginner




Beiträge: 2
# Antwort: 4 - 25.09.2007 um 14:54 Uhr
Besten Dank, dein Code funktioniert

Ja, die $where ist für beide sql_befehle die gleiche, falls irgendwer anders nocheinmal das Problem haben sollte:

Die Variable $where aus Zeile : 10
 
1.
1. / 2. / ... 
<?php $where = empty($squads_id) ? "squads_id = '" $squads_id "'";?>

muss ersetzt werden durch :
 
1.
2.
3.
1. / 2. / ... 
<?php 
$where 
= empty($squads_id) ? 'wars_status != 'upcoming'' 'squads_id = ''.$squads_id.'' AND wars_status != 'upcoming''
?>


Danke nochmal duRiel !


Zuletzt editiert von hush am 25.09.2007 um 14:56 Uhr (3x Editiert)
Inaktiv
|
Ramires ClanSphere Team

Supporter
Supporter



Herkunft: Waldeck
Beiträge: 1900
# Antwort: 5 - 25.09.2007 um 18:42 Uhr
kay, kay,...

./closed


------------------

Verschwende keine Energie an Dinge die Du nicht ändern kannst...


Inaktiv
|
Antworten: 5
Seite [1]


Sie müssen sich registrieren, um zu antworten.