Antworten auf deine Fragen:
Neues Thema erstellen

$_SESSION aber wo anfangen?

Sling

Nicht mehr ganz neu hier

Hey Leute,

ich stehe vorfolgendem problem. Ich habe wieder diese zwei dropdownfelder nun wird anhand dieser Felder eine abfrage aus der DB gemacht soweit so gut. Das ergebnis wir als link aus gegeben wenn man dort nun drauf klickt soll folgendes passieren. Da ja die seite dann aktualisiert wird wir zwar der entsprechende Artikel angezeigt nur leider verschindet die erste abfrage ja gelöscht weil sich html nicht merkt was vorher abgerufen wurde und somit müsste man neu suchen. Ich würde es aber gerne so haben das ich die eingabe der beiden dropdownfelder in einer sassion speicher, und die den abruf regeld das praktisch bei der aktualisierung der seite nach klicken auf den link die selbe abfrage noch einmal durch geführt wird und somit artikel und das ergebniss der ersten abfrage zusehen sind. Hoffe Ihr konntet mir folgen.

um es euch zu verdeutlichen hier mal der teil der seite um den es geht.


Gruß Sling
 

AW: $_SESSION aber wo anfangen?

Also nein, ich konnte dir nicht folgen.. Aber du könntest das in den Link reinschreiben. Das würde ich jetzt einfacher finden als eine Session.
Also blubb.php?alt=iwas
und anstatt iwas schreibst du dann hin was ausgewählt wurde.
Ich weiss zwar nich ob du das meintest, weil ich deinen Text nich blicke, aber vll ja schon..
 
AW: $_SESSION aber wo anfangen?

lol ok kann ich verstehen das man den Text nicht blickt.

Also noch mal ich habe ein formular mit zwei dropdownfelder wie ihr ja in dem bsp. link seht wenn ihr nun eine auswahltreft und suchendrückt bekommt ihrdarunter ein ergebniss. Dies wird als link ausgegeben wo die ID zum jeweiligen artikel dranhängt. wenn ma nun auf den link drückt erscheintzwar der artikel aber die suchabfrage verschwindet. Die wollte ich unterbinden in dem ich die selectierten werte aus den dropdownfelder in einer session speichere und bei der aktualisierung durch aufruf des links praktisch noch mal mit den werten aus der session suche. So das das suchergebniss zusehen ist und der artiekel. Ich hoffe das ist besser
 
AW: $_SESSION aber wo anfangen?

Nachdem du auf Suchen geklickt hast, liegen doch die ausgewählten Werte als $_POST Variablen vor. Diese kannst du doch gleich in die Session schreiben...
 
AW: $_SESSION aber wo anfangen?

hast du denn jetzt schon das $_POST in ne Session gepackt ?
 
Zuletzt bearbeitet:
AW: $_SESSION aber wo anfangen?

Ah.. Dann würde ich das wie von mir beschrieben machen. Also das du in die URL vom Link reinschreibst, welche auswahl getroffen wurde.
 
AW: $_SESSION aber wo anfangen?

dasfür kannst du einfach eine Fallunterscheidung machen, bei der dazwischen unterschieden wird, ob die Seite durch klicken des Submitbuttons neu geladen wurde, oder durch klicken eines der links aus den Suchergebnissen.
damit man das ergebnis des submitklicks einfach auswerten kann musst du dem submit auch noch einen Namen geben zB
Code:
<input [B][COLOR=Red]name="such_submit"[/COLOR][/B] type="submit" name="aktion" value="Suchen" id="Submit" />

jetzt kannst du die Fallunterscheidung machen:
Code:
session_start();
if (isset($_POST['such_submit']){
  // der submitbutton "Suche" wurde geklickt
  $_SESSION['suchstring'] = $_POST['ebene1'];
  /* hier dann die Suchabfrage und Ausgabe
  mit Suchstring=$_POST['ebene1'] */
} else {
  //es wurde auf einen Link geklickt
  /*hier die Suchabfrage und Ausgabe mit
  suchstring = $_SESSION['suchstring']
  */
}
 
AW: $_SESSION aber wo anfangen?

Ok das klingt logisch nur irgend wie hapert es an der umsetzung.
Hier mal mein script bis jetzt:


PHP:
<div id="content">
<div id='content_left'>

<div id="content">
<div id='content_left_bgh'>
<?php 
	include("#_functions.inc");
	include("mysql.inc");
	$ebene1=$_POST['ebene1'];
	$ebene2=$_POST['ebene2'];
	$aktion=$_POST['aktion'];

	$arr1 = explode (".", $ebene1);
	$ebene1_zahl = $arr1[0];

	$arr2 = explode (".", $ebene2);
	$ebene2_zahl = $arr2[0];

	$sql="";
?>
<form action="<?php $PHP_SELF ?>" method="post" name="bgh">
      <select name="ebene1" class="auswahlfeld" id="ebene1" onchange="update_auswahl();">
        <option value="I. Allgemein">I. Allgemein</option>      
        <option value="II. Mietvertragsabschluß">II. Mietvertragsabschluß</option>
        <option value="III. Mietzins">III. Mietzins</option>
        <option value="IV. Mietzinsüberhöhung">IV. Mietzinsüberhöhung</option>
      </select>
      <br />
      <br />
      <select name="ebene2" id="ebene2" disabled="disabled" class="auswahlfeld">
        <option>inaktiv</option>
      </select>
      <br />
      <br />
      <input type="hidden" name="id" value="<?=session_id();?>" />
      <input type="submit" name="aktion" value="Suchen" id="Submit" />
      <input type="submit" name="aktion" value="Alle anzeigen" id="Submit" />
</form>
<br />
<div class="winXP">
  		<div id="pane1" class="scroll-pane_auflistung">
<?php 

	if ($ebene2_zahl == "")
	{
		$query = "SELECT ebene1, ebene1_zahl, ebene2, ebene2_zahl, ebene3, Urteil, Entscheidung, Abdruck, Bemerkung, Datum, id FROM urteile_bgh WHERE ebene1_zahl = '$ebene1_zahl' ORDER BY id ASC";
		$sql = mysql_query($query)
       		or die(mysql_error());
	}
	else
	{
		$query = "SELECT ebene1, ebene1_zahl, ebene2, ebene2_zahl, ebene3, Urteil, Entscheidung, Abdruck, Bemerkung, Datum, id FROM urteile_bgh WHERE ebene1_zahl = '$ebene1_zahl' AND ebene2_zahl = '$ebene2_zahl' ORDER BY id ASC";
		$sql = mysql_query($query)
       		or die(mysql_error());
	}

if ($aktion =="Alle anzeigen")
{
	$query = "SELECT ebene1, ebene1_zahl, ebene2, ebene2_zahl, ebene3, Urteil, Entscheidung, Abdruck, Bemerkung, Datum, id FROM urteile_bgh ORDER BY id ASC";
	$sql = mysql_query($query)
       or die(mysql_error());
} 

if (!empty($sql)){
while ($ds = mysql_fetch_object($sql)) {
	  $id =	$ds->id;	
      $ebene1_zahl = $ds->ebene1_zahl;
      $ebene1 = $ds->ebene1;
	  $ebene2_zahl = $ds->ebene2_zahl;
	  $ebene2 = $ds->ebene2;
	  $ebene3 = $ds->ebene3;
	  $urteil = $ds->Urteil;
	  $entscheidung = $ds->Entscheidung;
	  $abdruck = $ds->Abdruck;
	  $bemerkung = $ds->Bemerkung;
      $datum = $ds->Datum;
?>
           
<span class="seiten_text"><a href="<?php $PHP_SELF ?>?id=<?=$id?>"><?=format($ebene3)?></a></span><br />
<?php
}
}
?>
	</div>
</div>




</div><!-- close content_left -->

<div id='content_right'>
<div id="content_right_top"></div>
<div id="content_right_headline"><img src="img/headlines/bgh.png" width="550" height="50" /></div>
<?php
//Aktion bestimmen
$arr = explode ("=", $_SERVER['REQUEST_URI']);
$id = $arr[1];

if (!empty($id))
{
	$query2 = "SELECT ebene1, ebene1_zahl, ebene2, ebene2_zahl, ebene3, Urteil, Entscheidung, Abdruck, Bemerkung, Datum, id FROM urteile_bgh WHERE id = '$id' ORDER BY id ASC";
	$sql2 = mysql_query($query2)
    or die(mysql_error());
	
	if (!empty($sql2))
	{
		
	while ($ds = mysql_fetch_object($sql2)) 
		{
	  	$id =	$ds->id;	
      	$ebene1_zahl = $ds->ebene1_zahl;
      	$ebene1 = $ds->ebene1;
	  	$ebene2_zahl = $ds->ebene2_zahl;
	  	$ebene2 = $ds->ebene2;
	  	$ebene3 = $ds->ebene3;
	  	$urteil = $ds->Urteil;
	  	$entscheidung = $ds->Entscheidung;
	  	$abdruck = $ds->Abdruck;
	  	$bemerkung = $ds->Bemerkung;
      	$datum = $ds->Datum;
		}
		echo $urteil;
	}
}

?>
</div><!-- content rigth -->
</div><!-- close content-->

Kannst du mir eventuel schnell mal eintragen was da jetzt genau wo hin muss?
@sokie

Die Idee von bigpaul werde ich auch einmal versuchen.
 
AW: $_SESSION aber wo anfangen?

also du willst, dass immer die entsprechende, nennen wir es mal, Kategorie zu dem Artikel selctiert ist???

Nun erstmal solltest du das auch bei der suche umsetzen.

Da steht dir ja das zu selectierende Feld im $_POST-Array zur verfügung. Ich denke dann sollte der Rest auch kein Problem sein.

Wenn du den Artikel anzeigst, dann sollte es doch über die DB-Struktur möglich sein die entsprechende Kategorie über die Artikel Informationen heraus zu finden oder nicht?

etwas quelltext und etvl die Tabellen Struktur wären nicht schlecht.
 
AW: $_SESSION aber wo anfangen?

zunächst einmal eine Entschuldigung, dass die Submits bereits einen namen (aktion) haben ist mit ganz entgangen.
wird das script per drücken der submit Schaltfläche aufgerufen, wird ja die $_POST['aktion'] erzeugt. damit kann man nun prüfen ob das script einen suchbegriff übergibt.
bei deinem script lässt sich das sehr einfach nutzen:
Code:
  if(isset($_POST['aktion'])){ // wenn submit ausgeführt wird
    $ebene1=$_POST['ebene1'];
    $ebene2=$_POST['ebene2'];
    //die werte werden in der Session gespeichert:
    $_SESSION['ebene1'] = $ebene1;
    $_SESSION['ebene2'] = $ebene2;
  } else { //wenn nicht submit geklickt wurde (sondern einen der Links)
    $ebene1 = $_SESSION['ebene1'];//wird auf die in der Session gespeicherten Werte
    $ebene2 = $_SESSION['ebene2'];//zurückgegriffen
  }

    $arr1 = explode (".", $ebene1);
    $ebene1_zahl = $arr1[0];

    $arr2 = explode (".", $ebene2);
    $ebene2_zahl = $arr2[0];

    $sql="";
?>
usw...
 
Zuletzt bearbeitet:
AW: $_SESSION aber wo anfangen?

Jo sehr gut sokie klapt einwandfrei. Ich glaube sone schaltung nennt sich falltür oder so änlich. Naja egal klapt jedenfals super und das mit dem isset und dem namen des submits das wusste ich auch noch nicht. werde ich mir mal merken ist einfacher als immer das mit name="aktion" und dann den value zu übergeben. So kann man fomulare sicher viel besser steuern. THX.

Ich danke euch mal für eure Hilfe und werde mich sicher bald wieder hier melden.

PS. Muss nämlich noch wissen ob man mit Javascripts csv datein auslesen kann *fg* bekomm ich aber auch noch raus.
 
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Flatrate für Tutorials, Assets, Vorlagen

Statistik des Forums

Themen
118.954
Beiträge
1.540.089
Mitglieder
68.109
Neuestes Mitglied
crillix
Oben