Sessions erstellen

  • PHP

Es gibt 8 Antworten in diesem Thema. Der letzte Beitrag () ist von 3daycliff.

    Sessions erstellen

    Hallo zusammen,
    Ich würde gerne die AnlagenNr des Datensatzes der in der Gleichen Spalte ist wie der ändern Button in eine Session Schreiben.
    Das ich session_start(); immer am anfang der Seite schreiben muss und das ich die Session mit

    PHP-Quellcode

    1. echo $_SESSION['nummer'];

    ausgeben kann weiss ich schon. Nur weiss ich nicht wie ich die "AnlagenNr" in eine Session kriege.

    PHP-Quellcode

    1. <?php
    2. include('db_connect_i.inc.php');
    3. ini_set('display_errors', true);
    4. //require_once '.././auth.php';
    5. include('db_connect_i.inc.php');
    6. //sql befehl
    7. $sql = 'SELECT *
    8. FROM tblAnlagenNr
    9. WHERE `Autr-Erh` = 1';
    10. $erg = $db->query ($sql) or die ("Fehlermeldung=".$db->error());
    11. echo"<table id=\"myTable\" class=\"tablesorter\" rules=\"all\">";
    12. echo"<thead>";
    13. echo"<tr><th>Anlagen Nr.</th><th>Projekt Bezeichnung</tr>";
    14. echo"</thead> ";
    15. echo"<tbody>";
    16. while(($row = $erg->fetch_assoc()) !== Null){
    17. echo
    18. '<tr>
    19. <td>'.$row["AnlagenNr"].'</td>
    20. <td>'.$row["ProjektBezeichnung"].'</td>
    21. <td><a href="anlagen_details.php?ida='.$row["AnlagenNr"].'">Ändern</td>
    22. </tr>';
    23. }
    24. echo"</tbody>";
    25. echo"</table>";
    26. ?>


    kann mir jemand helfen?
    Ok, was währe denn sinnvoll wenn ich die Daten über mehrere Skripte und includes haben müsste?

    Ich müsste ja die AnlagenID von hier speichern:
    Spoiler anzeigen

    PHP-Quellcode

    1. <?php
    2. include('db_connect_i.inc.php');
    3. ini_set('display_errors', true);
    4. //require_once '.././auth.php';
    5. include('db_connect_i.inc.php');
    6. //sql befehl
    7. $sql = 'SELECT *
    8. FROM tblAnlagenNr
    9. WHERE `Autr-Erh` = 1';
    10. $erg = $db->query ($sql) or die ("Fehlermeldung=".$db->error());
    11. echo"<table id=\"myTable\" class=\"tablesorter\" rules=\"all\">";
    12. echo"<thead>";
    13. echo"<tr><th>Anlagen Nr.</th><th>Projekt Bezeichnung</tr>";
    14. echo"</thead> ";
    15. echo"<tbody>";
    16. while(($row = $erg->fetch_assoc()) !== Null){
    17. echo
    18. '<tr>
    19. <td>'.$row["AnlagenNr"].'</td>
    20. <td>'.$row["ProjektBezeichnung"].'</td>
    21. <td><a href="anlagen_details.php?ida='.$row["AnlagenNr"].'">Ändern</td>
    22. </tr>';
    23. }
    24. echo"</tbody>";
    25. echo"</table>";
    26. ?>[/spoiler][spoiler]


    Über dieses Fenster:
    Spoiler anzeigen

    PHP-Quellcode

    1. <?php
    2. session_start();
    3. echo session_id();
    4. //$_SESSION['nummer'] = $_GET["ida"];
    5. $_SESSION['nummer'] = isset($_GET["ida"]) ? $_GET["ida"] : "Alles Kacke";
    6. //require_once '.././auth.php';
    7. include('db_connect_i.inc.php');
    8. ini_set('display_errors', true);?>
    9. <!doctype html>
    10. <html>
    11. <head>
    12. <meta charset="UTF-8">
    13. <link type="text/css" href="../site/source/1.css" rel="stylesheet" media="screen" />
    14. <title>Datenbank</title>
    15. <script type="text/javascript" src="site/js/jquery-1.11.1.min.js"></script>
    16. <script type="text/javascript" src="site/js/jquery.tablesorter.js"></script>
    17. <script type="text/javascript" src="site/js/jquery-ui-1.9.2.custom.min.js"></script>
    18. <link rel="stylesheet" href="site/js/css/ui-lightness/jquery-ui-1.9.2.custom.css" />
    19. <script type="text/javascript">
    20. $(document).ready(function()
    21. {
    22. $("#myTable").tablesorter();
    23. }
    24. );
    25. </script>
    26. <!-- JavaScript für das jQuery Autocomplete -->
    27. <script>
    28. // Außerdem neu: Der Autocompleter-Code
    29. $(function() {
    30. var availableTags = [
    31. "ActionScript",
    32. "AppleScript",
    33. "Asp",
    34. "BASIC",
    35. "C",
    36. "C++",
    37. "Clojure",
    38. "COBOL",
    39. "ColdFusion",
    40. "Erlang",
    41. "Fortran",
    42. "Groovy",
    43. "Haskell",
    44. "Java",
    45. "JavaScript",
    46. "Lisp",
    47. "Perl",
    48. "PHP",
    49. "Python",
    50. "Ruby",
    51. "Scala",
    52. "Scheme"
    53. ];
    54. $( "#tags" ).autocomplete({
    55. source: "sucheMitJQueryAutocompleter.php", minLength:2
    56. //source: availableTags, minLength:1
    57. });
    58. });
    59. </script>
    60. </head>
    61. <body>
    62. <div id="container">
    63. <header>
    64. <img src="../site/images/logo.JPG" alt="Logo" title="Logo"/>
    65. <p>Copyright schnibli</p>
    66. <h2>Du befindest dich in der Anlagenverwaltung</h2>
    67. </header>
    68. <nav>
    69. <h2>Anlagenverwaltung</h2>
    70. <ul>
    71. <li><a href="anlagen_details.php?navi=1" title"normal Darstellung">Übersicht</a></li>
    72. <li><a href="anlagen_details.php?navi=2" title"normal Darstellung">Allgemein</a></li>
    73. <li><a href="anlagen_details.php?navi=3" title"normal Darstellung">Schienen Anlage</a></li>
    74. <li><a href="anlagen_details.php?navi=4" title"normal Darstellung">Fahr Antrieb</a></li>
    75. <li><a href="anlagen_details.php?navi=5" title"normal Darstellung">Dreh Kranz Antrieb</a></li>
    76. <li><a href="anlagen_details.php?navi=6" title"normal Darstellung">Hubwinde</a></li>
    77. <li><a href="anlagen_details.php?navi=7" title"normal Darstellung">Zusatz Winde</a></li>
    78. <li><a href="anlagen_details.php?navi=8" title"normal Darstellung">Auslegerverstellung Hydraulik</a></li>
    79. <li><a href="anlagen_details.php?navi=9" title"normal Darstellung">Auslegerverstellung Spindel</a></li>
    80. <li><a href="anlagen_details.php?navi=10" title"normal Darstellung">Auslegerverstellung Seile</a></li>
    81. <li><a href="anlagen_details.php?navi=11" title"normal Darstellung">Drehbanlken</a></li>
    82. <li><a href="anlagen_details.php?navi=12" title"normal Darstellung">Hubtisch</a></li>
    83. <li><a href="anlagen_details.php?navi=13" title"normal Darstellung">Diverses</a></li>
    84. <br />
    85. <li><a href="anlagen_details.php?navi=14" title"">Zurück</a></li>
    86. </pre>
    87. </nav>
    88. <aside>
    89. <h2>Suche</h2>
    90. <?php
    91. echo"<form method='post' action='{$_SERVER['PHP_SELF']}'>";
    92. ?>
    93. <input type=text name=suchstring size=20>
    94. <input type="submit" value="Suchen"> <br />
    95. <input type="reset">
    96. <input type="hidden" name="sent" value="1">
    97. </form>
    98. <!--auto suche deaktiviert-->
    99. <!--<?php
    100. echo "<form method=\"post\" action=\"anlagen_uebersicht.php\">
    101. <table>
    102. <tr>
    103. <td><input id=\"tags\" type=text name=suchstring size=28 class=\"ui-widget\"></td>
    104. </tr>
    105. <tr>
    106. <td>
    107. <input type=\"submit\" value=\"Absenden\">
    108. <input type=\"hidden\" name=\"sent\" value=\"1\">
    109. </td>
    110. </tr>
    111. </table>";
    112. ?>
    113. -->
    114. </aside>
    115. <section id="content">
    116. <article>
    117. <h2>Datensätze</h2>
    118. <?php
    119. $navigation = isset($_GET['navi']) ? $_GET['navi'] : '0';
    120. switch ($navigation) {
    121. case "0":
    122. echo "<h2>Anlagen Details</h2>";
    123. //echo $_POST["$ID"];
    124. echo $_SESSION['nummer'];
    125. break;
    126. case "1":
    127. break;
    128. case "2":
    129. echo "<h2>Anlage Allgemein</h2>";
    130. include("anlagendaten/anlage_allgemein.inc.php");
    131. break;
    132. case "3":
    133. echo "<h2>Schienenanlage</h2>";
    134. include("anlagendaten/schienen_anlage.inc.php");
    135. break;
    136. case "4":
    137. echo "<h2>Fahr Antrieb</h2>";
    138. include("anlagendaten/fahr_antrieb.inc.php");
    139. break;
    140. case "5":
    141. echo "<h2>Drehkranz Antrieb</h2>";
    142. include("anlagendaten/dreh_kranz_antrieb.inc.php");
    143. break;
    144. case "6":
    145. echo "<h2>Hubwinde</h2>";
    146. include("anlagendaten/hubwinde.inc.php");
    147. break;
    148. case "7":
    149. echo "<h2>Zusatzwinde</h2>";
    150. include("anlagendaten/zusatzwinde.inc.php");
    151. break;
    152. case "8":
    153. echo "<h2>Auslegerverstellung Hydraulik</h2>";
    154. include("anlagendaten/ausleger_vers_hydraulik.inc.php");
    155. break;
    156. case "14":
    157. header ("Location:anlagen_uebersicht.php?navi=1");
    158. break;
    159. }//switch
    160. //wurde das suchformular ausgefüllt
    161. $sent = isset($_POST['sent']) ? $_POST['sent'] : '';
    162. $suche = isset($_POST['suchstring']) ? $_POST['suchstring'] : '';
    163. if ($sent and $suche)
    164. {
    165. echo"<h2>Datenbank suche</h2>";
    166. include("suchen.inc.php");
    167. }
    168. ?>
    169. </article>
    170. </section>
    171. <footer>
    172. <h2>Allgemeines</h2>
    173. <?php echo $login_status;
    174. ?>
    175. </footer>
    176. </div>
    177. </body>
    178. </html>

    Hier in die Abfrage bringen:
    Spoiler anzeigen

    PHP-Quellcode

    1. <?php
    2. var_dump($_SESSION);
    3. echo session_id();
    4. echo $_SESSION['nummer'];
    5. include('db_connect_i.inc.php');
    6. $sql = "SELECT *
    7. FROM tblAnlagenNr
    8. WHERE
    9. AnlagenNr = '20571'" ;
    10. $erg = $db->query ($sql) or die ("Fehlermeldung=".$db->error());
    11. while(($row = $erg->fetch_assoc()) !== Null){
    12. $a=$row["AnlagenNr"];
    13. $b=$row["ProjektBezeichnung"];
    14. $c=$row["ProjektNr"];
    15. $d=$row["Autr-Erh"];
    16. $e=$row["AuftragsDatum"];
    17. $f=$row["AuftragsVolumen"];
    18. $g=$row["AnlagenTypNr"];
    19. $h=$row["Auftr-Nicht-erhalten"];
    20. $i=$row["Autr-Nicht-Offeriert"];
    21. $j=$row["Budget"];
    22. }
    23. //var_dump($_GET)
    24. ?>
    25. <form method="POST" action="speichern.php">
    26. <p>Anlagen Nummer:<br><input name="anlagennr" value="<?php echo $a; ?>" style="text-align:right"></p>
    27. <p>Projekt Bezeichnung:<br><input name="projektbezeichnung" value="<?php echo $b; ?> style="text-align:right"></p>
    28. <p>Projekt Nummer:<br><input name="projektnr" value="<?php echo $c; ?>" style="text-align:right"></p>
    29. <p>Auftrag Erhalten<br><input name="autr-erh" value="<?php echo $d; ?>" style="text-align:right"></p>
    30. <p>Auftrags Datum:<br><input name="auftragsdatum" value="<?php echo $e; ?>" style="text-align:right"></p>
    31. <p>Auftrags Volumen:<br><input name="auftragsvolumen" value="<?php echo $f; ?>" style="text-align:right"></p>
    32. <p>Anlagen Typ Nr:<br><input name="anlagentypnr" value="<?php echo $g; ?>" style="text-align:right"></p>
    33. <p>Auftr-Nicht-erhalten:<br><input name="auftr-nicht-erhalten" value="<?php echo $h; ?>" style="text-align:right"></p>
    34. <p>Auftrag nicht Offeriert:<br><input name="autr-nicht-offeriert" value="<?php echo $i; ?>" style="text-align:right"></p>
    35. <p>Budget:<br><input name="budget" value="<?php echo $j; ?>" style="text-align:right"></p>
    36. <input type=submit name=submit value="Formular absenden">
    37. <input type="reset">
    38. <input type="hidden" name="insertsent" value="1">
    39. </form>[/spoiler][spoiler]

    Ahoi,

    wenn du sie in auf eine andere Seite bekommen willst, bau dir ein Formular auf und sende die Daten via Post rüber.
    warum

    PHP-Quellcode

    1. ​include('db_connect_i.inc.php');
    eigentlich 2x ?
    Grüße Manu

    Was Gott dem Menschen erspart hat, kann der Computer.
    Billy ©, (*1932), Schweizer Aphoristiker
    Quelle: www.Aphorismen.de
    Also, im ersten Spoiler schreibst du die ID (anlagen_details.php?ida=...), das ist schon mal super.
    Der zweite Spoiler ist gerade der Code von anlagen_details.php der dann irgendwas mit der ID machen soll, oder? Falls ja, bekommst du die ID über $_GET['ida']. Die Auflistung "Anlagenverwaltung" mit den Links dient dann dazu, weitere Details der "Anlage" einzusehen? Also musst du doch folglich nur die ID an die URLs dranhängen:
    <a href="anlagen_details.php?navi=4711&amp;ida="<?php echo $_GET['ida']; ?>"> und schon kannst du später auch via $_GET['ida'] drauf zugreifen.
    Und wenn du sie im Code vom dritten Spoiler haben willst (welche Datei das auch immer sein mag), das gleiche Spielchen. Entweder an die URL dranhängen oder wenn du sie per Formular mit POST übergeben möchtest, halt als zusätzliches hidden-Feld und aus $_POST holen.

    Was die Qualität deines "Programmcodes" angeht, so solltest du dir da noch mal ein paar Gedanken machen. Auch über Sicherheit. (Mein Mini-Beispielcode enthält bewusst eine Lücke ;)
    Was Mache ich den hier falsch:

    PHP-Quellcode

    1. <li><a href="anlagen_details.php?navi=2&amp;ida="<?php echo $_GET['ida'];?> title"normal Darstellung">Allgemein</a></li>


    erdedigt:

    PHP-Quellcode

    1. <a href="anlagen_details.php?navi=2&amp;ida=<?php echo $_GET['ida'];?>" title"normal Darstellung">Allgemein</a>

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „schnibli“ ()