Webstatt.org - Community seit 2006 - 2012 (2024?)

code problem

user-139
12.11.2006 13:14

also ich hab folgendes problem, und zwar brauche ich bei der ersten if abfrage dieses array_key-exists, das wenn kein wert übermittelt wurde, halt automatisch die news angezeigt werden ,a llerdings verhindert er mir auch die anzeige der kommentare+das schreiben von kommentaren
hat dafür event jemand ne idee, wie man das anders machen knnte das auch die kommentare angeziegt werden?


hier mal der schematische aufbau,.
<?php
if( ($_GET['news']=='show'zwinkern || (!array_key_exists('news', $_GET)))
{

elseif($_GET['comments'] == 'add'zwinkern
{
########?>
<input type="submit" name="speichern" value="Abschicken" class="button" />
<input type="hidden" name="speichern" value="save" />

<?php
if (isset($_POST['speichern'])){
#######
mysql_query($sql, $conn);
echo 'Dein Kommentar wurde erfolgreich gespeichert.';
echo"<meta http-equiv=\"refresh\" content=\"2; url=\"/>";
?>

<?php
exit;
}

}?>


dann hab ich allerdings noch das problem das ich einen ersatz für das <meta... brauche, .. der mir halt einfach die seite neu läd,.(aktualisiert),.

OS: Windows XP CPU: AMD Athlon XP 3200+ RAM: 512MB DDR PC3200 (Dual Channel) Mainboard: MSI K7n2 Delta-L HDD: 80GB WD Graka:Radeon 9600 Pro =>Alekeijer Straussbuwe
Avatar user-162
12.11.2006 13:32

du hast, mit Verlaub, einen wüsten Codestil.... :rolleyes:

du hast am Anfang eine if() Abfrage in der als erst eine elseif() Abfrage machst... das else zu was?


if(...) {
elseif(...) {
...
}
}


ausserdem wird die erste if() Abfrage gar nicht geschlossen...

und du gibst weiter unten zuerst einen Satz aus und danach einen Meta-Tag! Meta-Tags gehören in den <head /> deiner Seite

aber nun zu deinem Problem,
wenn ich dich richtig Verstanden habe willst du es etwa so:

-Wenn $_GET['news'] == show oder news nicht im $_GET ist soll er einfach die News anzeigen
-wenn $_GET['comments'] == add soll er ein Formular ausgeben
-und wenn $_POST['speichern'] gesetzt ist soll er den Kommentar speichern.

also mein Vorschlag:


//zuerst neue speichern
if(isset($_POST['speichern'])) {
mysql_query("..."zwinkern;
// wenn du hier nochmals von Hand laden willst (was ich für unnötig finde) mach das doch mit header(...);
}

if($_GET['news']=='show' || !array_key_exists('news', $_GET)) {
echo "News....";
echo "etc.";
} elseif($_GET['comments'] == 'add'zwinkern {
echo "<input />";
}

Perfection is not when there’s nothing to add, but when there’s nothing to take away swisscheek.com/magazine
user-139
12.11.2006 13:43

ja is ja klar das ich nich den ganzen code hier poste, das wäre zu unübersichtlich Fettes Grinsen
deshalb sieht das so komisch aus,.

mit dem aktualisieren der seite möcht ich halt erreichen das der user seinen Kommentar auich direkt lesen kann ,.

OS: Windows XP CPU: AMD Athlon XP 3200+ RAM: 512MB DDR PC3200 (Dual Channel) Mainboard: MSI K7n2 Delta-L HDD: 80GB WD Graka:Radeon 9600 Pro =>Alekeijer Straussbuwe
Avatar user-162
12.11.2006 14:01

was ja auch so ist in meinem Code weil da zuerst das neue gespeichert und dann erst ausgelesen wirdzwinkern

Perfection is not when there’s nothing to add, but when there’s nothing to take away swisscheek.com/magazine
user-139
12.11.2006 14:33

mh irgendwie funzt es aba bei mir nich richtig, bekomme da einfach gar keine ausgabe,.

OS: Windows XP CPU: AMD Athlon XP 3200+ RAM: 512MB DDR PC3200 (Dual Channel) Mainboard: MSI K7n2 Delta-L HDD: 80GB WD Graka:Radeon 9600 Pro =>Alekeijer Straussbuwe