Mit PHP CSS-Eigenschaften ändern möglich?

Rexo

Mitglied
Hallo zusammen,

Problemstellung:
In einem kleinen Formular kann man sich für 2 Optionen entscheiden, sagen wir mal
a) ja
b) nein
Je nach der Auswahl (wobei beide nie gleichzeitig gewählt sein können), soll ein
ein kleiner Info-Bereich erscheinen.

Die beiden Info-Bereiche sind im "Grundzustand" mittels CSS auf 'display:none'. Um das jeweilige Info-Fenster einzublenden, reicht es die Eigenschaft auf 'display:block' zu ändern.


Nun zu meiner Frage:
Ist es mit PHP möglich den CSS-Wert eines Elements zu ändern? (Sprich, ich lese mit $_POST['wert1'] den Zustand aus und "reagiere" entsprechend..aber wie kann ich "reagieren" ;) )
PHP ist in einem CSS-Teil nicht möglich (erlaubt?). wie auch immer es funktioniert effektiv nicht (z.B. display: <?php echo $variabel; ?>;)

Grüsse,
Rexo

PS: Eine Lösung mit Javascript ist möglich, möchte es aber nur sehr sehr ungern einsetzen
 
Es ist möglich. Das Problem hierbei wäre jedoch, dass PHP serverseitig interpretiert wird und das Formular somit abgeschickt werden müsste.
 
Das Formular kann abgeschickt werden. (Nur eine Markierung der entsprechenden Auswahl (focus) wäre natürlich schöner, aber nicht zwingend notwendig)

Dann "hangelt" man sich durch die Anmelderoutine.

Die Idee ist:
Sind Sie bereits Kunde?
x Ja
x Nein

->> um dann entsprechend "interaktiv" zu reagieren, um so dem Nutzer nur soviel Info einzublenden, wie nötig.

Es ist möglich. Das Problem hierbei wäre jedoch, dass PHP serverseitig interpretiert wird und das Formular somit abgeschickt werden müsste.
Wie? Ich benötige keine "fertiges" Skript.. der Grundgedanke (kurze Erklärung) // Stichwort sollte reichen ;)
 
Also wenn das Formular nicht abgeschickt werden kann, dann kannst Du da mit PHP nichts reissen sondern wirst wohl mit JavaScript beigehen muessen.
 
Prüfe doch einfach den übermittelten Wert:
PHP:
if( $_POST['wert'] == 'foo' ) {
	echo 'Info für foo';
}
if( $_POST['wert'] == 'bar' ) {
	echo 'Info für bar';
}
 
Also wenn das Formular nicht abgeschickt werden kann, dann kannst Du da mit PHP nichts reissen sondern wirst wohl mit JavaScript beigehen muessen.
Das Formular kann abgeschickt werden. (Nur eine Markierung der entsprechenden Auswahl (focus) wäre natürlich schöner, aber nicht zwingend notwendig)


if( $_POST['wert'] == 'foo' ) {
echo 'Info für foo';
}
if( $_POST['wert'] == 'bar' ) {
echo 'Info für bar';
}

Ich möchte aber keine Text-Ausgabe, sondern die Änderungen eines CSS-Wertes.

Grundzustand

#infobox {
display: none;
weitere CSS-Eigenschaften...
}

soll zu

#infobox {
display: block;
weitere CSS-Eigenschaften...
}

werden, wenn der Nutzer die enstprechende Option gewählt hat, das hab ich mit
st es mit PHP möglich den CSS-Wert eines Elements zu ändern? (Sprich, ich lese mit $_POST['wert1'] den Zustand aus und "reagiere" entsprechend..aber wie kann ich "reagieren" )
gemeint, hoff nun ist es klarer :rolleyes:
 
Dann heißt es: nein, mit PHP ist das nicht möglich. Du kannst zwar mit PHP ein Stylesheet oder Eigenschaftsdeklarationen ausgeben aber die Eigenschaften des Elements selbst kannst du mit PHP nicht verändern. Das ist nur mit JavaScript möglich.
 
Da kommt mir grade ne Idee ;)

Wenn man den Wert nicht ändern kann, naja dann vergibt man direkt komplett neue Eigenschaften:

<div id="infobox_ausgeblendet">
Inhalt
</div>

und das wird zu


<div id="infobox_eingeblendet">
Inhalt
</div>

Innerhalb des body Teils kann ich direkt den php-Code einfügen

<div id=<?php echo $infobox?>>
Inhalt
</div>

Das hab ich bereits bei meiner Navigation so gelöst, man muss darauf achten, dass die Anführungszeichen ein Teil des php-"Codes" sind.

Dann werd ich direkt den Wert beim Abschicken des Formulars abfragen und entsprechend die Variable infobox in "infobox_eingeblendet" oder "infobox_ausgeblendet" ändern, wobei die Eigenschaften im CSS seperat hinterlegt sind.

Werd später (nach dem Grillen ;-) ) berichten, ob's reibungsfrei geklappt hat.

Grüsse
 
Zurück