<option value=" "> wird nicht als übergeben :-(
Graphity
- php
0 Harry0 Sven Rautenberg0 Harry0 Peter Thomassen0 Henryk Plötz0 Harry
0 Graphity
Hallo
Ich habe mit PHP ein Formular erstellt.
In dem werden Daten aus einer Datenbank angezeigt. Bei den letzen beiden Formularfeldern kommen noch Auswahlmöglichkeit " " dazu. Eines der letzten beiden Felder habe ich unten eingefügt.
Das Problem ist, daß die Variable nach einem submit nicht den Wert hat, sondern %A0.
Kann man es schaffen, daß sie den Wert bekommt?
//3. Dienst
$getDienst3 = mysql_query("SELECT Name FROM namen LEFT JOIN dienst on (namen.Name = dienst.DienstArzt AND dienst.DienstDatum = SUBDATE( '" . $datum . "', INTERVAL 1 DAY)) LEFT JOIN urlaub ON (namen.Name = urlaub.UrlaubName AND urlaub.UrlaubDatum = '" . $datum . "') WHERE UrlaubDatum IS NULL AND DienstDatum IS NULL OR (DienstArt != 'FOA' AND DienstArt != '1.Dienst' AND DienstArt != '2.Dienst' AND DienstArt != 'Notarzt') ORDER BY name");
$getAktDienst3 = mysql_query("SELECT DienstArzt FROM dienst WHERE DienstDatum = '" . $datum . "' AND DienstArt = '3.Dienst'");
$AktDienst3 = mysql_fetch_array($getAktDienst3);
echo '<td><select name="Dienst3" size="10">' . "\n";
echo '<option value=" "';
if($AktDienst3["DienstArzt"] == '' || $AktDienst3["DienstArzt"] == ' ')
echo ' selected';
echo '> </option>' . "\n";
while($Dienst3 = mysql_fetch_array($getDienst3))
{
echo '<option';
if($Dienst3["Name"] == $AktDienst3["DienstArzt"])
echo ' selected';
echo '> ' . $Dienst3["Name"] . '</option>' . "\n";
}
Holladiri
Ich habe mit PHP ein Formular erstellt.
In dem werden Daten aus einer Datenbank angezeigt. Bei den letzen beiden Formularfeldern kommen noch Auswahlmöglichkeit " " dazu. Eines der letzten beiden Felder habe ich unten eingefügt.
Das Problem ist, daß die Variable nach einem submit nicht den Wert hat, sondern %A0.
Kann man es schaffen, daß sie den Wert bekommt?
Quäl Dich nicht, bau einfach vorher noch 'ne IF-Abfrage rein:
if($wasweissich=="%A0") $wasweissich = " ";
Ciao,
Harry
Hallo nochmal
Quäl Dich nicht, bau einfach vorher noch 'ne IF-Abfrage rein:
if($wasweissich=="%A0") $wasweissich = " ";
hab ich schon erwähnt, daß das eigentlich recht seltsam ist ? Wenn der Browser/PHP/der Server oder sonstwer aus irgendeinem Grund das in ein Leerzeichen " " umwandelt und dann auch noch versucht, daß zu codieren, sollte doch ein "%20" rauskommen ?! %A0 ist soweit ich weiß ein "á" !
Bist Du sicher, daß da net noch woanders ein Hase vergraben ist ?
Ciao,
Harry
Hallo nochmal
Quäl Dich nicht, bau einfach vorher noch 'ne IF-Abfrage rein:
if($wasweissich=="%A0") $wasweissich = " ";
hab ich schon erwähnt, daß das eigentlich recht seltsam ist ? Wenn der Browser/PHP/der Server oder sonstwer aus irgendeinem Grund das in ein Leerzeichen " " umwandelt und dann auch noch versucht, daß zu codieren, sollte doch ein "%20" rauskommen ?! %A0 ist soweit ich weiß ein "á" !
Tatsache. Das finde ich jetzt auch komisch. Aber Du hast ja meinen Quellcode gesehen. Da stimmt doch alles?
cu
Graphity
Hallo
Ich habe mit PHP ein Formular erstellt.
In dem werden Daten aus einer Datenbank angezeigt. Bei den letzen beiden Formularfeldern kommen noch Auswahlmöglichkeit " " dazu. Eines der letzten beiden Felder habe ich unten eingefügt.
Das Problem ist, daß die Variable nach einem submit nicht den Wert hat, sondern %A0.
Kann man es schaffen, daß sie den Wert bekommt?
Du hast dem Browser gesagt, daß du als Value ein geschütztes Leerzeichen haben willst, und das hat er gesendet. %A0 sollte der entsprechende Code dafür sein.
Wenn du die Zeichenfolge &-n-b-s-p-; haben willst, dann mußt du das dem Browser natürlich sagen:
<option value=" ">
Auch wenn es technisch möglicherweise nicht ganz korrekt ist: Beim Empfang der Seite wird vom Browser eine Konvertierung der Zeichen vorgenommen, bevor diese genutzt werden, z.B. für die Anzeige. Dabei wird natürlich der Zeichensatz der Seite ausgewertet (Content-Encoding) - daran erkennt der Browser, was für Zeichen z.B. deutsche Umlaute sind, um sie im systemeigenen System korrekt darstellen zu können.
Weiterhin werden in diesem Schritt auch die Entities konvertiert. ä wird zu ä. & wird zu &. " wird zu ". Und wird zu einem Non-Breaking-Space (auch Shift-Space). Und das gilt auch für die Angaben in Attributen. Nicht umsonst meckert der Validator bei Parametern in der URL, daß er dort Entities findet, die er nicht kennt:
<a href="seite?var1=sowas&var2=anderes"> ist falsch.
<a href="seite?var1=sowas&var2=anderes"> ist korrekt.
Das gleiche ist bei dir das Problem.
- Sven Rautenberg
Holladiri
Du hast dem Browser gesagt, daß du als Value ein geschütztes Leerzeichen haben willst, und das hat er gesendet. %A0 sollte der entsprechende Code dafür sein.
Ist es nur halt leider nicht. %A0 ist ein á. Ein Leerzeichen wäre %20.
Und das gilt auch für die Angaben in Attributen. Nicht umsonst meckert der Validator bei Parametern in der URL, daß er dort Entities findet, die er nicht kennt:
<a href="seite?var1=sowas&var2=anderes"> ist falsch.
<a href="seite?var1=sowas&var2=anderes"> ist korrekt.
Ja bäh schaut das häßlich aus ... und ich dachte immer, der Validator spinnt ;-)
Ciao,
Harry
Hi,
Du hast dem Browser gesagt, daß du als Value ein geschütztes Leerzeichen haben willst, und das hat er gesendet. %A0 sollte der entsprechende Code dafür sein.
Ist es nur halt leider nicht. %A0 ist ein á. Ein Leerzeichen wäre %20.
Es geht nicht um ein Leerzeichen, es geht um ein geschütztes (!)
Leerzeichen (Non-Breaking-Space)!
<a href="seite?var1=sowas&var2=anderes"> ist falsch.
<a href="seite?var1=sowas&var2=anderes"> ist korrekt.
Ja bäh schaut das häßlich aus ... und ich dachte immer, der Validator spinnt ;-)
Nee, is schon richtig. Hab mich früher aber auch immer drüber ge-
wundert.
Bye,
Peter
Moin,
Ist es nur halt leider nicht. %A0 ist ein á. Ein Leerzeichen wäre %20.
Ich weiss ja nicht was für einen verdrehten Zeichensatz du benutzt, aber in Latin-1 (http://selfhtml.teamone.de/inter/zeichensaetze.htm#iso8859_liste) findet sich das á an Position 225, entspricht also %E1. An Position 160 (entsprechend %A0) findet sich in der Tat ein Leerzeichen.
--
Henryk Plötz
Grüße aus Berlin
Holladiwaldfee
Ist es nur halt leider nicht. %A0 ist ein á. Ein Leerzeichen wäre %20.
Ich weiss ja nicht was für einen verdrehten Zeichensatz du benutzt, aber in Latin-1 (http://selfhtml.teamone.de/inter/zeichensaetze.htm#iso8859_liste) findet sich das á an Position 225, entspricht also %E1. An Position 160 (entsprechend %A0) findet sich in der Tat ein Leerzeichen.
Lalala :-)
Mein verdrehter Zeichensatz beruht auf der *vorsichtigumschau* Q-Basic Zeichentabelle und damit den DOS-ASCII-Codes *duck*
Hat den Anschein, als wäre das schon ein wenig veraltet, hehe. Werd mir bei Gelegenheit mal ne neue Zeichentabelle ausdrucken *tüdlü*
Ciao,
Harry
Herlichen Dank
jetzt funzts...
cu
Graphity