JLI Spieleprogrammierung Foren-Übersicht JLI Spieleprogrammierung

 
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen 
 medals.php?sid=5e23c4c96ccdc5af0fe5526282aeece5Medaillen   RegistrierenRegistrieren   ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

PHP: Post

 
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Entwicklung
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
underberg
JLI'ler



Anmeldedatum: 11.01.2003
Beiträge: 153

Medaillen: Keine

BeitragVerfasst am: 25.01.2004, 07:43    Titel: PHP: Post Antworten mit Zitat

Folgendes...
Der untenstehnde Quellcode ist 1:1 aus einem Buch übernommen. Geht aber net...
Theoretisch soll er die Formulardaten an sich selbst übermitteln und dann ausgeben... Wie man aber unter http://mitglied.lycos.de/metalogy/form.php sieht, bringt er immer Seite nicht gefunden...

Code (wichtige Sache sind fett):
Code:

<HTML>
<HEAD>
<TITLE>
<?php
echo "PHP Test";
?>
</TITLE>
</HEAD>
<BODY>
[b]<?php
if ($sent & $name) {
echo <<<FORMANSWER[/b]
Sie haben folgende Nachricht gesendet:<p />
<b>Ihr Name:</b> $name<br />
<b>E-Mail:</b> $email<br />
<b>Bewertung:</b> $rank<br />
<b>Ihre Nachricht:</b> <br />
<div style="background-color:#DDDDDD">$message</div>
<b>Gekauft bei: </b>$purchase
<form method="post" action="$PHP_SELF">
<input type="submit" value="Neue Nachricht senden?" />
</form>
[b]FORMANSWER;
} else {[/b]?>
<h3>Wie hat Ihnen das Buch bisher gefallen?</h3>
[b]<form method="post" action="$PHP_SELF">[/b]
<table>
<tr>
<td>Mein Name:</td>
<td><input type="text" name="name" size="50" /></td>
</tr>
<tr>
<td>Meine E-Mail:</td>
<td><input type="text" name="email" size="50" /></td>
</tr>
<tr>
<td>Bewertung:</td>
<td>
1<input type="radio" name="rank" value="6" />
2<input type="radio" name="rank" value="2" checked="checked"/>
3<input type="radio" name="rank" value="3" />
4<input type="radio" name="rank" value="4" />
5<input type="radio" name="rank" value="5" />
(Schulnoten)
</td>
</tr>
<tr>
<td valign="top">Nachricht:</td>
<td>
<textarea cols="30" rows="6" name="message">
Ihre Nachrht...</textarea>
</td>
</tr>
<tr>
<td>Wo haben Sie es gekauft?</td>
<td>
<select size="1" name="purchase">
<option value="Fachbuchhandel" />Fachbuchhandel
<option value="Kaufhaus" />Kaufhaus
<option value="Online" />Online
<option value="Verlag" />Verlag
<option value="Nur geliehen" />Nur geliehen
</select>
</td>
</tr>
<tr>
<td colspan="2">
<input type="submit" value="Absenden" />
<input type="reset" />
<input type="hidden" name="sent" value="1" />
</td>
</tr>
</table>
[b]</form>
<?php
} /* end if */
?>[/b]


</body>
</HTML>


Zuletzt bearbeitet von underberg am 25.01.2004, 08:12, insgesamt einmal bearbeitet
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
TheMillenium
Dark JLI'ler



Anmeldedatum: 21.07.2002
Beiträge: 1427
Wohnort: World
Medaillen: Keine

BeitragVerfasst am: 25.01.2004, 07:59    Titel: Antworten mit Zitat

lol Laughing

und den Fehler hat ein Buchautor gemacht..tztz

Code:

<h3>Wie hat Ihnen das Buch bisher gefallen?</h3>
[b]<form method="post" action="$index.php">[/b]


ist falsch!!

das geht so:
Code:
<h3>Wie hat Ihnen das Buch bisher gefallen?</h3>
[b]<form method="post" action="$PHP_SELF">[/b]

_________________
The source of all power is in its destiny...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
underberg
JLI'ler



Anmeldedatum: 11.01.2003
Beiträge: 153

Medaillen: Keine

BeitragVerfasst am: 25.01.2004, 08:13    Titel: Antworten mit Zitat

Ne Sorry...
War mein Fehler, hatte ausprobiert ob das so geht, weil ich dachte es liegt am $PHP_SELF dass es nicht geht.... Rolling Eyes
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
TheMillenium
Dark JLI'ler



Anmeldedatum: 21.07.2002
Beiträge: 1427
Wohnort: World
Medaillen: Keine

BeitragVerfasst am: 25.01.2004, 08:16    Titel: Antworten mit Zitat

dann musst du auf jeden Fall sowas wie das hier schreiben:
Code:
[b]<form method="post" action=<? echo "$PHP_SELF"; ?>>[/b]

_________________
The source of all power is in its destiny...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
underberg
JLI'ler



Anmeldedatum: 11.01.2003
Beiträge: 153

Medaillen: Keine

BeitragVerfasst am: 25.01.2004, 08:20    Titel: Antworten mit Zitat

Danke... Jetzt gehts... Cool

Und warum ging das ohne echo nicht?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
TheMillenium
Dark JLI'ler



Anmeldedatum: 21.07.2002
Beiträge: 1427
Wohnort: World
Medaillen: Keine

BeitragVerfasst am: 25.01.2004, 08:33    Titel: Antworten mit Zitat

weil die Variable $PHP_SELF nur von dem PHP Compiler verarbeitet wird.
Das ist das gleiche wenn du in C++ einfach die Variable hinschreibst ohne cout << ... zu benutzen. Bei echo ersetzt der PHP Compiler den Variablennamen mit dem Wert der Variable. Wenn du genau hingesehen hast, konnte man unten im IE lesen "Öffne .../$PHP_SELF"
_________________
The source of all power is in its destiny...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
underberg
JLI'ler



Anmeldedatum: 11.01.2003
Beiträge: 153

Medaillen: Keine

BeitragVerfasst am: 25.01.2004, 09:32    Titel: Antworten mit Zitat

Danke Very Happy ....

Bloß mal so noch eine Frage (brauch dafür ja nicht extra nen Thread aufmachen...)
Kann es sein das ein Provider (z.B. Lycos) das setzen von Cookies verbietet?

Weil folgendes nämlich nicht funktioniert:

Code:
<BODY>

<?php setcookie("color",$setcolor,time()+180); ?>
<h3>Personalisierte Seite</h3>
<?
if (!$color) {
echo "Cookie nicht gesetzt";
} else {
echo "Cookie sagt: Farbe $color";
}
?>
<P>
<form method="post" action="<? echo $PHP_SELF ?>">
<select name=setcolor size=1>
<option value=>Farbauswahl
<option value=red>Rot
<option value=green>Gr&n
<option value=blue>Blau
</select>
<P>
<input type=submit>
</form>


</body>
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
TheMillenium
Dark JLI'ler



Anmeldedatum: 21.07.2002
Beiträge: 1427
Wohnort: World
Medaillen: Keine

BeitragVerfasst am: 25.01.2004, 10:22    Titel: Antworten mit Zitat

so müsste es gehen:
Code:
<?php if($sent) @setcookie("color",$color,time()+180); ?>
<h3>Personalisierte Seite</h3>
<?
if (!$color) {
echo "Cookie nicht gesetzt";
} else {
echo "Cookie sagt: Farbe $color";
}
?>
<P>
<form method="post" action="<? echo $PHP_SELF ?>">
<select name=color size=1>
<option value=>Farbauswahl
<option value=red>Rot
<option value=green>Grün
<option value=blue>Blau
</select>
<P>
<input type="hidden" name="sent" value="1" />
<input type=submit>
</form>

_________________
The source of all power is in its destiny...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
underberg
JLI'ler



Anmeldedatum: 11.01.2003
Beiträge: 153

Medaillen: Keine

BeitragVerfasst am: 25.01.2004, 11:17    Titel: Antworten mit Zitat

Jein.
Er zeigt jetzt an, aber erstellt de facto den Cookie nicht...
Kann aber evtl. auch bei Lycos liegen... Keine Ahnung ob das daran liegt.

Und welchem Zweck dient das @?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
TheMillenium
Dark JLI'ler



Anmeldedatum: 21.07.2002
Beiträge: 1427
Wohnort: World
Medaillen: Keine

BeitragVerfasst am: 25.01.2004, 11:31    Titel: Antworten mit Zitat

Es wird die Fehlermeldung unterdrückt, die besagt, dass du schon die Header-Daten gesendet hast.

Und meine Lösung funktioniert:

http://www.newevolution.de/test2.php
_________________
The source of all power is in its destiny...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
underberg
JLI'ler



Anmeldedatum: 11.01.2003
Beiträge: 153

Medaillen: Keine

BeitragVerfasst am: 25.01.2004, 11:43    Titel: Antworten mit Zitat

Kann das sein, dass bei deiner hochgeladenen Seite der PHP Teil fehlt? Rolling Eyes
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
TheMillenium
Dark JLI'ler



Anmeldedatum: 21.07.2002
Beiträge: 1427
Wohnort: World
Medaillen: Keine

BeitragVerfasst am: 25.01.2004, 13:10    Titel: Antworten mit Zitat

underberg hat Folgendes geschrieben:
Kann das sein, dass bei deiner hochgeladenen Seite der PHP Teil fehlt? Rolling Eyes


Wie das?

Bei mir zeigt er z.B. das hier an:
Zitat:
Personalisierte Seite
Cookie: Farbe: red

_________________
The source of all power is in its destiny...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
underberg
JLI'ler



Anmeldedatum: 11.01.2003
Beiträge: 153

Medaillen: Keine

BeitragVerfasst am: 25.01.2004, 13:57    Titel: Antworten mit Zitat

Also bei mir geht gar nix..

Geht bei dir:
http://mitglied.lycos.de/metalogy/index.php

Bei mir zeigt er da zumindest Farbe: blau, auch wenn er keinen Cookie erstellt...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
TheMillenium
Dark JLI'ler



Anmeldedatum: 21.07.2002
Beiträge: 1427
Wohnort: World
Medaillen: Keine

BeitragVerfasst am: 25.01.2004, 15:15    Titel: Antworten mit Zitat

Wenn du diesen Code:
Code:
<BODY>

<?php setcookie("color",$setcolor,time()+180); ?>
<h3>Personalisierte Seite</h3>
<?
if (!$color) {
echo "Cookie nicht gesetzt";
} else {
echo "Cookie sagt: Farbe $color";
}
?>
<P>
<form method="post" action="<? echo $PHP_SELF ?>">
<select name=setcolor size=1>
<option value=>Farbauswahl
<option value=red>Rot
<option value=green>Gr&n
<option value=blue>Blau
</select>
<P>
<input type=submit>
</form>


</body>


dazu verwendest, erstellt er doch einen Cookie?
_________________
The source of all power is in its destiny...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
underberg
JLI'ler



Anmeldedatum: 11.01.2003
Beiträge: 153

Medaillen: Keine

BeitragVerfasst am: 25.01.2004, 15:40    Titel: Antworten mit Zitat

Nö... Shocked

Also er erstellt 4 Cookies, aber das sind alles bloß werbedingens von Lycos...
Keiner der zu dem Quellcode gehört...
Aber ich denke mal das liegt an Lycos... Das mit PHP4-Sessions funktioniert auch net...

Kannst ja mal gucken, ob vielleicht irgendwas ausgeschaltet ist:
http://mitglied.lycos.de/metalogy/info.php
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Entwicklung Alle Zeiten sind GMT
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.


Powered by phpBB © 2001, 2005 phpBB Group
Deutsche Übersetzung von phpBB.de

Impressum