php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2004

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 29.06.2004, 11:26  
Erfahrener Benutzer
 
Registriert seit: 11.03.2004
Beiträge: 138
Sonja
Standard Form und Session

Hallo

Habe 2 Fragen, packe sie aber in die gleiche Anfrage

1. Bei der Fehlerüberprüfung habe ich 2 Versionen, beide gehen, weiss nicht welche schlussendlich besser ist. Was meint ihr? Soll ich auf die URL verweisen, oder mit JacaScript zurück gehen?

2. Wenn die Inhalte in den Sessions sind, und dann doch nichts eingegeben werden soll, also "löschen" oder "zurücksetzen" gedrückt wird, leeren sich die Felder nicht, weil die Inhalte in den Sessions sind. Wie kann ich das machen? Diese Funktion geht nur wenn die Seite das erste Mal aufgerufen wird, also bevor das erste mals Speichern gedrückt wird.

File 1
Code:
<?
 session_start();
$_SESSION=array();
// Clear cookie
unset($_COOKIE[session_name()]);
// Destroy session data
session_destroy();
header("Location:seite_A.php?UIN=$UIN&id_usr=$id_usr");
?>
File 2 (seite_A.php) stark verkürzt
Code:
<? session_start();
if($_SESSION['sess_v_art']=="")$_SESSION['sess_v_art']="tagung";
?>
<form action=seite_B.php' method='POST'>
<input type='hidden' name='SID' value='<? echo strip_tags(SID);?>'>
              
  <table border='0' cellpadding='0' cellspacing='1'>
    <tr> 
      <td colspan='7' bgcolor='#EEEEEE' class='title'></td>
      <input name='v_art' type='radio' value='tagung' <? if ($_SESSION['sess_v_art'] =="tagung") echo "checked";?>><td width="178">
      <td width="17"  class='text'><? echo" $txt_tagung";?></td>
      <td width="1" ></td>
      <td width="1" ></td>
    </tr>
    <tr> 
      <input type='radio' name='v_art' value='Gruppen' <? if ($_SESSION['sess_v_art'] =="Gruppen") echo "checked";?>><td width="1"></td>
      <td width="17"  class='text'><? echo" $txt_gruppe";?></td>
      <td width="20"  class='text'> <input type='radio' name='v_art' value='medien' <? if ($_SESSION['sess_v_art'] =="medien") echo "checked";?>></td>
      <td width="167"  class='text'><? echo" $txt_tv_radio";?></td>
      <input type='radio' name='v_art' value='andere' <? if ($_SESSION['sess_v_art'] =="andere") echo "checked";?>><td width="19"></td>
      <td colspan='2'  class='text'><? echo" $txt_andere_angebote";?></td>
      <td ></td>
    </tr>
    <tr> 
      <td nowrap  class='utitle'></td>
      <td nowrap  class='utitle'><? echo" $txt_v_ort";?></td>
      <td ></td>
      <td  class='text'><? echo" $txt_v_gebaude";?></td>
      <td ></td>
      <td colspan='2' > <input name='gebaeude' type='text'  size='30' class='text' value='<? echo $_SESSION['sess_gebaeude'] ;?>'></td>
      <td ></td>
    </tr>
    <tr> 
      <td nowrap  class='utitle'></td>
      <td nowrap  class='utitle'></td>
      <td ></td>
      <td  class='text'><? echo" $txt_v_strasse";?></td>
      <td ></td>
      <td colspan='2' > <input name='verort_strasse' type='text'  size='30' class='text' value='<? echo $_SESSION['sess_verort_strasse'] ;?>'></td>
      <td ></td>
    <tr> 
      <td nowrap  class='utitle'></td>
      <td nowrap  class='utitle'></td>
      <td ></td>
      <td colspan='4'><input type='reset' name='loeschen' value='<? echo"$txt_zuruecksetzen";?>' class='text'></td>
      <td > <input type='submit' name='submit' value='<? echo"$txt_speichern";?>' class='text'></td>
    </tr>
    <tr> 
  </table>
            </form>

Fehlermeldungen, resp. zurück Version 1 mit URL
Code:
<? session_start();
if ($_SESSION['sess_v_art'] <> $v_art) $_SESSION['sess_v_art'] = $v_art;
if ($_SESSION['sess_zugang'] <> $zugang) $_SESSION['sess_zugang'] = $zugang;
if ($_SESSION['sess_gebaeude'] <> $gebaeude) $_SESSION['sess_gebaeude'] = $gebaeude;
if ($_SESSION['sess_verort_strasse'] <> $verort_strasse) $_SESSION['sess_verort_strasse'] = $verort_strasse;


// Fehlermeldungen

if($_SESSION['sess_zeitraum'] =='einmalig' and ($_SESSION['sess_d_a']=="" or $_SESSION['sess_mo_a']=="" ))
{
//echo="

$txt_rueckmeldung1</p>"; include("seite_A.php?UIN=$UIN&id_usr=$id_usr");
echo"

$txt_rueckmeldung1</p>


<a href=seite_A.php?UIN=$UIN&id_usr=$id_usr'>$txt_rueckmeldung12</a></p>";
exit;}

if($_SESSION['sess_zeitraum'] =='fortlaufend' and $_SESSION['sess_tag']=="")
{echo"

$txt_rueckmeldung2</p>


<a href=seite_A.php?UIN=$UIN&id_usr=$id_usr'>$txt_rueckmeldung12</a></p>";
exit;}

// Eintragung in DB
$query="insert into tabelle
()
values
()";
$result=mysql_query($query);

//Rückmeldung bei erfolgreichem Eintrag
echo"<p class='text'>$txt_v_erfasst


<a href=\"File_1.php?UIN=$UIN&id_usr=$id_usr&".strip_tags(SID)."\" class='text'>$txt_v_weitere</a>

<a href=\"../admin_index.php?UIN=$UIN&id_usr=$id_usr&".strip_tags(SID)."\" class='text'>Einstiegsseite</a>";
unset ($_SESSION['sess_gebaeude']);
unset ($_SESSION['sess_verort_strasse']);
?>
Fehlermeldung Version 2 mit JavaScript, zurück
Code:
<? session_start();
if ($_SESSION['sess_v_art'] <> $v_art) $_SESSION['sess_v_art'] = $v_art;
if ($_SESSION['sess_zugang'] <> $zugang) $_SESSION['sess_zugang'] = $zugang;
if ($_SESSION['sess_gebaeude'] <> $gebaeude) $_SESSION['sess_gebaeude'] = $gebaeude;
if ($_SESSION['sess_verort_strasse'] <> $verort_strasse) $_SESSION['sess_verort_strasse'] = $verort_strasse;


// Fehlermeldungen

if($_SESSION['sess_zeitraum'] =='einmalig' and ($_SESSION['sess_d_a']=="" or $_SESSION['sess_mo_a']=="" ))
{
echo"

$txt_rueckmeldung1</p>


$txt_rueckmeldung12</p>";
exit;}

if($_SESSION['sess_zeitraum'] =='fortlaufend' and $_SESSION['sess_tag']=="")
{echo"

$txt_rueckmeldung2</p>


$txt_rueckmeldung12</p>";

exit;}
// Eintragung in DB
$query="insert into tabelle
()
values
()";
$result=mysql_query($query);

//Rückmeldung bei erfolgreichem Eintrag
echo"<p class='text'>$txt_v_erfasst


<a href=\"File_1.php?UIN=$UIN&id_usr=$id_usr&".strip_tags(SID)."\" class='text'>$txt_v_weitere</a>

<a href=\"../admin_index.php?UIN=$UIN&id_usr=$id_usr&".strip_tags(SID)."\" class='text'>Einstiegsseite</a>";
unset ($_SESSION['sess_gebaeude']);
unset ($_SESSION['sess_verort_strasse']);
?>
Sonja ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 29.06.2004, 11:47  
Gast
 
Beiträge: n/a
Standard

zu 1. ist doch letztendlich egal, musst nur dran denken, dass nicht jeder java-scripta aktiviert hat, es also nicht funktioniert
ich habs so gemacht, dass ein fehler ausgegeben wird und er dann nach 3 sekunden alleine zurückgeht (mit nem metatag)
zu 2.hab nicht so richtig verstanden was du möchtest, aber wenn ich es doch richtig verstanden habe,dann hast du ein formular, da stehen werte drin die automatisch ausgelesen werden?!
mach doch einfach noch ne abfrage drüber, sowas wie
Code:
 if($aktion==löschen){
gibs aus ohne einzulesen;
}
else{
gib aus mit einlesen;}
 
Alt 29.06.2004, 22:38  
Erfahrener Benutzer
 
Registriert seit: 11.03.2004
Beiträge: 138
Sonja
Standard gelöst

Das mit dem if()
{}
Ging nicht, wenn auch ich die if-Schlaufe gut kenne und "Behersche". Doch ich löste es, indem ich ein Button machte und auf die 1. Seite linke

Code:
<input name="Submit2" class='text' type="submit" onClick="MM_goToURL('parent','file_1.php?UIN=<? echo"$UIN";?>');return document.MM_returnValue" value="<? echo"$txt_zuruecksetzen";?>">
So werden die Session gelöscht und das Form leer angezeigt

zur Wiederholung File_1.php
Code:
<? 
 session_start(); 
$_SESSION=array(); 
// Clear cookie 
unset($_COOKIE[session_name()]); 
// Destroy session data 
session_destroy(); 
header("Location:seite_A.php?UIN=$UIN&id_usr=$id_usr"); 
?>
Bei den Fehlermeldungen habe ich mich nun zur Version mit der URL entschieden
Sonja ist offline  
Alt 29.06.2004, 23:08  
Erfahrener Benutzer
 
Registriert seit: 18.09.2003
Beiträge: 13.598
PHP-Kenntnisse:
Fortgeschritten
imported_Ben ist zur Zeit noch ein unbeschriebenes Blatt
Standard Re: gelöst

Zitat:
Zitat von Sonja
if-Schlaufe
was ist eine if-schlaufe?

meiner ansicht gehört auch so etwas zum programmieren dazu .. notation!

es hört sich so an, als sei das eine schleife .. etwas sich wiederholendes.
eigentlich ist es eine kontrollstruktur, die eine abfrage "verarbeitet" und entweder TRUE doer FALSE zurückgibt.

nur mal so am rande
imported_Ben ist offline  
Alt 30.06.2004, 00:53  
Erfahrener Benutzer
 
Registriert seit: 11.03.2004
Beiträge: 138
Sonja
Standard

Ja, if(){} ist keine Schlaufe sondern eine Abfrage und wenn if übereinstimmt dann eben das was in den {}

Sorry, ich wollte nicht verwirren. Ich werde es mir aber merken if ist eine Abfrage die etwas überprüft und wenn if eintrifft ....
Sonja ist offline  
Alt 30.06.2004, 00:59  
Erfahrener Benutzer
 
Registriert seit: 18.09.2003
Beiträge: 13.598
PHP-Kenntnisse:
Fortgeschritten
imported_Ben ist zur Zeit noch ein unbeschriebenes Blatt
Standard

:wink:
imported_Ben ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Erledigt] Session Problem karina_02 PHP Tipps 2008 6 18.05.2008 22:37
Problem bei session Lifetime Cyberbob_at_tot PHP Tipps 2007 5 05.06.2007 17:47
Session in Session tinchen PHP Tipps 2007 22 21.03.2007 19:53
session nach seitenwechsel leer... GELight PHP Tipps 2006 8 17.09.2006 15:17
Session Logout Login Navigation TailerD PHP Tipps 2006 10 24.06.2006 17:12
session array Timo Trallala PHP Tipps 2006 18 22.04.2006 13:45
[Erledigt] php session problem :( PHP Tipps 2005-2 5 21.10.2005 16:37
Klassenobjekt in ner Session speichern?! Finkman PHP Tipps 2005-2 5 09.08.2005 00:38
Session wird nicht angelegt PHP Tipps 2005-2 7 24.07.2005 13:35
Kreieren einer Session PHP Tipps 2005 11 28.05.2005 15:16
verliere Session Sonja PHP Tipps 2005 3 27.04.2005 09:32
[Erledigt] Formulardaten in einer Session speichern, per Link übergeben PHP Tipps 2004-2 2 29.12.2004 15:47
[Erledigt] Hilfe...PhpBB Session Problem!! PHP Tipps 2004-2 2 15.12.2004 18:28
Session bei Form Sonja PHP Tipps 2004 2 22.06.2004 08:20
$_GET und Session PHP Tipps 2004 9 20.06.2004 19:17

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
cookieunset, $_session[\'angemeldet\'] ist immer true egal was ich mache, strip_tags (sid)

Alle Zeitangaben in WEZ +2. Es ist jetzt 05:07 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.