Jnnbo: Session durch Klick löschen

0 123

Session durch Klick löschen

Jnnbo
  • php
  1. 1
    Matthias Apsel
    1. 1
      Der Martin
  2. 0
    Jörg Reinholz
    • html
    • javascript
    1. 0
      Gunnar Bittersmann
      • barrierefreiheit
      • html
      1. 0
        Jnnbo
        1. 1
          Gunnar Bittersmann
          • css
        2. 0
          Matthias Apsel
        3. 0
          Jörg Reinholz
    2. 0
      Jnnbo
      • php
      1. 1
        Jörg Reinholz
        • html
        1. 0
          Jnnbo
          1. 1
            Jörg Reinholz
            1. 0
              Jnnbo
              1. 0
                Jörg Reinholz
                • projektverwaltung
                • software
                1. 0
                  woodfighter
                  1. 0
                    Gunnar Bittersmann
                    1. 0
                      woodfighter
                      1. 0
                        dedlfix
                        1. 1
                          Gunnar Bittersmann
                        2. 0
                          woodfighter
                          • software
              2. 2
                Der Martin
                1. 0
                  Jnnbo
                  1. 0
                    Gunnar Bittersmann
                    • projektverwaltung
                    • software
                    1. 0
                      Jnnbo
                      1. 1
                        woodfighter
                      2. 0
                        Christian Kruse
                        1. 0
                          dedlfix
                          1. 0
                            Christian Kruse
                            1. 0

                              Git-Probleme

                              dedlfix
                              1. 0
                                Christian Kruse
                              2. 1
                                Auge
                    2. 0
                      dedlfix
                      1. 0
                        Gunnar Bittersmann
                2. 0
                  Jörg Reinholz
                  1. 1

                    Session-Werte durch Klick löschen

                    TS
                    • menschelei
                    1. 0
                      Christian Kruse
                      1. 1
                        Tabellenkalk
                        1. 0
                          Christian Kruse
                        2. 0
                          TS
                      2. 0
                        TS
                        • zu diesem forum
                        1. 0
                          Christian Kruse
                          1. 0
                            TS
                            1. 0
                              Christian Kruse
                              1. 0
                                Christian Kruse
                          2. 0
                            Tabellenkalk
                3. 0
                  Tabellenkalk
                  • windows
                  1. 0

                    IT-Geschichte

                    TS
                    1. 0
                      Tabellenkalk
                  2. 1
                    Der Martin
                    1. 0
                      Gunnar Bittersmann
                      1. 0
                        Der Martin
                        1. 1
                          Tabellenkalk
                          1. 0
                            Der Martin
                            1. 0
                              Matthias Apsel
                              • humor
                              • windows
                          2. 1

                            Tastaturbelegung mit Sonderfunktionen

                            TS
                            • editor
                            1. 0
                              Matthias Apsel
                              1. 0
                                Der Martin
                              2. 0
                                TS
                                • editor
                                • typografie
                                1. 1
                                  Der Martin
                                  1. 1
                                    Gunnar Bittersmann
                                    • html
                                    • typografie
                                    1. 0
                                      Matthias Apsel
                                      1. 0
                                        Tabellenkalk
                                        • css
                                        • typografie
                                        1. 0
                                          Gunnar Bittersmann
                                          1. 0
                                            Tabellenkalk
                                            1. 0
                                              Gunnar Bittersmann
                                              • menschelei
                                              1. 0
                                                Tabellenkalk
                                                1. 0
                                                  Matthias Apsel
                                                2. 0
                                                  Matthias Apsel
                                                  1. 0
                                                    Tabellenkalk
                                                    1. 0
                                                      Der Martin
                                                      1. 0
                                                        Tabellenkalk
                                                      2. 0
                                                        MudGuard
                                                        1. 0
                                                          Der Martin
                                                          1. 0
                                                            MudGuard
                                                            1. 0
                                                              woodfighter
                                                  2. 0
                                                    Gunnar Bittersmann
                                      2. 0
                                        Gunnar Bittersmann
                                        • html
                                        1. 0
                                          Gunnar Bittersmann
                                    2. 0
                                      TS
                                      • html
                                      • semantik
                                2. 0
                                  Gunnar Bittersmann
                                  • html
                                  1. 1

                                    Was bringt die Zukunft?

                                    TS
                                    1. 0
                                      Tabellenkalk
                                      1. 0
                                        Matthias Apsel
                                        1. 0
                                          TS
                                          1. 1
                                            Tabellenkalk
                                        2. 0
                                          Gunnar Bittersmann
                                          • html
                                          • menschelei
                                    2. 0
                                      Matthias Apsel
                                      1. 1
                                        Der Martin
                                        1. 0
                                          TS
                                          1. 0
                                            Christian Kruse
                                        2. 0
                                          Matthias Apsel
                                          1. 1
                                            TS
                                            1. 0
                                              Matthias Apsel
                                              1. 0
                                                Der Martin
                                              2. 0
                                                Gunnar Bittersmann
                                                • menschelei
                                              3. 1
                                                robertroth
                                                • css
                                                • html
                                            2. 0
                                              Tabellenkalk
                                              1. 0
                                                Der Martin
                                              2. 0
                                                Gunnar Bittersmann
                                                • menschelei
                  3. 0
                    Christian Kruse
                  4. 0
                    Gunnar Bittersmann
              3. 0
                Jörg Reinholz
                1. 0
                  Jnnbo
                  • html
                  • jquery
                  • php
            2. 0
              Gunnar Bittersmann
          2. 0
            Gunnar Bittersmann
            • html
            • php
            1. 3
              dedlfix
              • menschelei
              1. 0
                TS
                1. 0
                  Christian Kruse
                  1. 0

                    Trennung von Markup und Funktionalitäten

                    TS
                    • html
                    • programmiertechnik
                    1. 0
                      Christian Kruse
                    2. 0
                      dedlfix
              2. 0
                Gunnar Bittersmann
                1. 0
                  dedlfix
                2. 0
                  Jnnbo
                  1. 0

                    Lach mal wieder

                    TS
                    1. 0
                      Der Martin
                3. 0
                  Christian Kruse
                  1. 1
                    Gunnar Bittersmann
  3. 1
    Gunnar Bittersmann
    • barrierefreiheit
    • html
  4. 1
    TS
    1. 0
      Jnnbo
      1. 0
        Jörg Reinholz
        • css
        • html

Moin,

ist es möglich durch einen Klick auf ein X (Grafik, die hinter einem Wort steht) komplett zu löschen und die Seite neu laden zu lassen oder muss ich das mit einem <button> machen?

Alternativ-Text

akzeptierte Antworten

  1. Hallo Jnnbo,

    ist es möglich durch einen Klick auf ein X (Grafik, die hinter einem Wort steht) komplett zu löschen und die Seite neu laden zu lassen oder muss ich das mit einem <button> machen?

    Ich vermute mal es fehlt „eine Session“.

    Session löschen muss PHP-seitig oder durch schließen des Browsers passieren.

    1. Du kannst mit JavaScript jedem Element jedes beliebige Verhalten unterschieben.
    2. Du kannst mit CSS jedes Element beliebig stylen.

    Ich würde mich für CSS entscheiden. Das hat den Vorteil, es funktioniert auch dann, wenn kein JavaScript zur Verfügung steht und selbst dann, wenn aus irgendwelchen Gründen auch kein CSS erreichbar ist. Außerdem ist es aufwändiger, alle Eigenschaften eines buttons nachzubauen.

    Bis demnächst
    Matthias

    --
    Signaturen sind bloed (Steel) und Markdown ist mächtig.
    1. Hi,

      Session löschen muss PHP-seitig oder durch schließen des Browsers passieren.

      durch Schließen des Browsers genaugenommen nicht. Damit wird abhängig von den Browser-Einstellungen höchstens das Cookie gelöscht, in dem die Session-ID gespeichert ist.

      Die Session selbst, also die serverseitig gespeicherte Datenstruktur, bleibt dort zunächst bestehen, bis die Müllabfuhr (Garbage Collection) mal wieder vorbeikommt.

      Ciao,
       Martin

  2. Moin!

    ist es möglich durch einen Klick auf ein X (Grafik, die hinter einem Wort steht) komplett zu löschen und die Seite neu laden zu lassen oder muss ich das mit einem <button> machen?

    Das geht natürlich. Denn genau so wie man die Behandlung des onclick-ereignisses an einen Button bindet geht das mit dem X.

    Variante 1 (altes HTML/Javascript)

    <span onclick="session_loeschen_click()">X</span>
    

    Die Funktion muss natürlich existieren und kann so aussehen, wie unten gezeigt.

    Moderner, Senden als GET:

    <span id="session_loeschen">X</span>
    <script>
    function session_loeschen_click () {
      window.location.href="seite.php?action=destroy_session";
    }
    
    function init() {
      document.getElementById('session_loeschen').onclick="session_loeschen_click";
    }
    init();
    </script>
    

    Willst Du die Daten als POST senden? Auch das geht:

    <span id="session_loeschen">X</span>
    <form method="POST" action="session_loeschen.php" id="session_loeschen_form" style="display:none">
       <input name="destroy_session" value="1">
    </form>
    <script>
    function session_loeschen_click () {
      document.forms['session_loeschen_form'].submit();
    }
    
    function init() {
      document.getElementById('session_loeschen').onclick="session_loeschen_click";
    }
    init();
    </script>
    

    Am billigsten wäre aber ein Link:

    <a id="session_loeschen_link" href="session_loeschen.php?destroy_session=1">X</a>
    

    ... den man natürlich mit CSS verhübschen kann. So kann man das X aussehen lassen wie einen Button (wegduck).

    Jörg Reinholz

    1. @@Jörg Reinholz

      Das geht natürlich.

      Njein.

      Denn genau so wie man die Behandlung des onclick-ereignisses an einen Button bindet geht das mit dem X.

      Nein. Ein Button ist per [tab]-Taste anwählbar und per [enter] clickbar …

      <span onclick="session_loeschen_click()">X</span>
      

      … das span-Element hingegen ist per se nicht per Tastatur anwählbar. Funktioniert also nicht.

      LLAP 🖖

      --
      Ist diese Antwort anstößig? Dann könnte sie nützlich sein.
      1. Hallo Gunnar,

        Nein. Ein Button ist per [tab]-Taste anwählbar und per [enter] clickbar …

        <span onclick="session_loeschen_click()">X</span>
        

        … das span-Element hingegen ist per se nicht per Tastatur anwählbar. Funktioniert also nicht.

        Wenn ich aber ein Button nehme, der passt überhaupt nicht in mein Design (siehe Bild im ersten Posting), das X wollte ich hinter dem Text platzieren, der Fett geschrieben ist.

        1. @@Jnnbo

          Wenn ich aber ein Button nehme, der passt überhaupt nicht in mein Design (siehe Bild im ersten Posting), das X wollte ich hinter dem Text platzieren, der Fett geschrieben ist.

          Wie Matthias schon sagte kannst du button stylen: border: none; background: none usw.

          LLAP 🖖

          --
          Ist diese Antwort anstößig? Dann könnte sie nützlich sein.
        2. Hallo Jnnbo,

          Wenn ich aber ein Button nehme, der passt überhaupt nicht in mein Design (siehe Bild im ersten Posting), das X wollte ich hinter dem Text platzieren, der Fett geschrieben ist.

          Du kannst per CSS den Button nach deinen Vorstellungen gestalten.

          Bis demnächst
          Matthias

          --
          Signaturen sind bloed (Steel) und Markdown ist mächtig.
        3. Moin!

          Wenn ich aber ein Button nehme, der passt überhaupt nicht in mein Design (siehe Bild im ersten Posting), das X wollte ich hinter dem Text platzieren, der Fett geschrieben ist.

          Nun ja. Auch einen Button kann man aussehen lassen wie ganz normalen Text. Ist er ja auch, aber mit Rahmen, Padding, Margin ...

          Und hätte den Vorteil, dass er sehr klickbar ausssieht, was die Benutzer meist freut. Inoweit wäre es durchaus sinnig zu überlegen, wie man einen Button ins Layout integriert statt die von mir gezeigten und von Gunnar kritisierten Krücken...

          Jörg Reinholz

    2. Hallo Jörg,

      ich hab es jetzt mal so umgesetzt

      Löschen meiner Session

      if(isset($_POST["delete_session"])){
      
      	unset($_SESSION['hersteller']);
      	unset($_SESSION['serien']);
      	unset($_SESSION['geraete']);
      
      }
      

      Ich bin mir hier noch nicht sicher, ob ich diese wirklich löschen soll oder einfach mit einem 0 Wert belegen.

      if(isset($_POST["delete_session"])){
      
      	$_SESSION['hersteller']	= "";
      	$_SESSION['serien']	= "";
      	$_SESSION['geraete']	= "";
      
      }
      

      Gibt es Vor- bzw. Nachteile dabei?

      im HTML habe ich mich für einen Button entscheiden, diese sieht so aus

      echo "<div class=\"artikel_amount_suche\">Wir haben ".$countProDetail_suche['amount']. " Artkel in der Rubrik \"<strong>".$countProDetail_suche['h_titel']." - ".$countProDetail_suche['s_titel']." - ".$countProDetail_suche['g_titel']."\"</strong> gefunden // <form method=\"post\" action=\"\"><button type=\"submit\" name=\"delete_session\" class=\"btSession\">Suche zurücksetzten</button></form></div>
      

      Mein CSS so

      .btSession{
        background-image: url(../icons/delete.png);
        background-repeat: no-repeat;
        padding: 0px 0 1px 21px;
        border: none;
        background-size: 16px 16px;
        color: red;
      }
      

      Das ganze sieht nun so aus (zwar nicht schön, aber auf das Design kommt es nicht an)

      Alternativ-Text

      1. Moin!

        Löschen meiner Session

        if(isset($_POST["delete_session"])){
        	unset($_SESSION['hersteller']);}
        

        Ich bin mir hier noch nicht sicher, ob ich diese wirklich löschen soll oder einfach mit einem 0 Wert belegen.

        if(isset($_POST["delete_session"])){
        	$_SESSION['hersteller']	= "";}
        

        Gibt es Vor- bzw. Nachteile dabei?

        Dachte ich es mir doch. Du löschst Werte aus der Session. Nun, es dürfte allenfalls sehr geringe Performance-Unterschiede geben, deren Ursachen bis hinunter ins Dateisystem und OS reichen. Wenn in der

        $_SESSION['hersteller']=1;
        

        steht könnte es äußerst geringfüging schneller gehen, diesen Wert auf 0 zu setzen. Da Du das aber allein nutzt: Nimm die Methode, welche Dich selbst am wenigsten irritiert und die wenigsten Seitenwirkungen hat.

        Das ganze sieht nun so aus (zwar nicht schön, aber auf das Design kommt es nicht an)

        Wieso "nicht schön"? Ich kann zwar nicht selbst wirklich gut gestalten - aber ich weiß was gut aussieht. Und das sieht gut aus. "Technisch" passt zum Produkt. Oder willst Du die Tinte mit Blumen oder Kronen verzieren? Auf das Design kommt es wohl an, Du willst ja womöglich längere Zeit damit arbeiten.

        Ich hätte im Hinblick darauf, was Du machst, einfach den höchsten Preis vorbelegt oder aber die "In den Warenkorb-Taste" deaktiviert so lange kein Preis ausgewählt ist.

        <button id="button_0" disabled>Klick</button> 
        

        und dann einfach bei einem Klick auf einen der zugehörigen Radio-Buttons:

        document.getElementById('button_0').disabled=false;
        

        Dann ist mir noch aufgefallen, dass die Selektoren für Suche auf dem default stehen. Im Tagesgeschäft wirst Du wollen, dass da die vorher gewählten Einträge angezeigt werden. Das geht mit

        <option value="foo" selected="selected">bar</option>
        

        natürlich musst Du auch rechten zurücksetzen, wenn Du links was anderes wählst. Das macht zwar Arbeit, aber "Wat nutt dat mutt!"

        Jörg Reinholz

        1. Hallo Jörg,

          Ich hätte im Hinblick darauf, was Du machst, einfach den höchsten Preis vorbelegt oder aber die "In den Warenkorb-Taste" deaktiviert so lange kein Preis ausgewählt ist.

          <button id="button_0" disabled>Klick</button> 
          

          und dann einfach bei einem Klick auf einen der zugehörigen Radio-Buttons:

          document.getElementById('button_0').disabled=false;
          

          OK, meine Radiobutton habe ich umgebaut, so ist es auch besser. Wäre es ohne großen Aufwand möglich den „Warenkorb Button“ komplett auszublenden und erst einzublenden, wenn ein Preis gewählt wurde? Derzeit sieht mein Code so aus:

          <input type=\"radio\" name=\"preis\" id=\"".htmlspecialchars($record['p_code'])."-preis1\" value=\"$preis1\" onClick=\"document.getElementById('button_".htmlspecialchars($record['p_code'])."').disabled=false;\">
          <label for=\"".htmlspecialchars($record['p_code'])."-preis1\">$preis1</label>
          

          Und mein Button derzeit noch (Submit) sieht nun so aus

          <input type=\"submit\" name=\"wk\" value=\"In den Warenkorb\" disabled id=\"button_".htmlspecialchars($record['p_code'])."\">
          

          Dann ist mir noch aufgefallen, dass die Selektoren für Suche auf dem default stehen. Im Tagesgeschäft wirst Du wollen, dass da die vorher gewählten Einträge angezeigt werden. Das geht mit

          <option value="foo" selected="selected">bar</option>
          

          Das wollte ich ehrlich gesagt auch machen, hab mich damit heute Vormittag mehrere Stunden mit beschäftigt, war dann aber kurz davor den ganzen scheiß in die Tonne zu treten weil nichts mehr geklappt habt, daher habe ich es wieder rückgängig gemacht. Mein Aufbau sieht so aus:

          Das erste Select Feld sieht so aus

           <select name="hersteller" id="hersteller" required>
                     <option value="">-- Bitte wählen --</option>
          			<?php 
                          $hersteller = hersteller($mysqli);
                          foreach($hersteller as $array){ ?>
                        <option value="<?php echo $array['h_id'];?>"><?php echo $array['h_titel'];?></option>
                      <?php } ?>
           </select>
          

          Das zweite dann so

          <select name="serien" id="serien" required>
            <option value="">-- Bitte wählen --</option>
          </select>
          

          Wird aber via jQuery gefüllt, das sieht so aus

          $('#hersteller').change(function(){
          			$.post(
          				'inc/auslesen-serie.php',
          				{h_id:$('#hersteller').val()},
          			function(res){
          				$('#serien').html(res);
          			});
          			
          $('#geraete')
          				.find('option')
          				.remove()
          				.end()
          				.append('<option value="0">-- Bitte wählen --</option>')
          				.val('0');
          		});
          $('#serien').change(function(){
          			$.post(
          				'inc/auslesen-geraete.php',
          				{s_id:$('#serien').val()},
          			function(res){
          				$('#geraete').html(res);
          			});
          		});
          

          Die Include Dateien sehen so aus

          auslesen_geraete.php

          if (isset($_POST['s_id']) && $_POST['s_id'] != ""){
          $neu = $_POST['s_id'];
          ?>
          <option value="">-- Bitte wählen --</option>
          <?php 
          $geraete = geraete($mysqli, $neu);
          foreach($geraete as $array){ ?>
          <option value="<?php echo $array['g_id'];?>"><?php echo $array['g_titel'];?></option>
          <?php } ?>
          <?php } ?>
          

          Jetzt müsstes du auch mein Problem sehen oder? Ich habe die Selectfelder so aufgebaut, dass die Felder gefüllt werden, wenn man ein Hersteller / Serie gewählt hat, wenn ich die Felder nun vorbelegen möchte, klappt dieses leider nicht mehr und ich weiß leider nicht, wie ich das noch abändern könnte.

          Die Funktionen dazu sehen so aus

          	function hersteller($mysqli) {
          		$stmt = $mysqli->prepare("SELECT h_id, h_titel, h_titelURL, h_status 
          				FROM web_hersteller");
          		$stmt->execute();
          		$stmt->bind_result($h_id, $h_titel, $h_titelURL, $h_status);
          		$stmt->store_result();
          	 	
          		if($stmt->num_rows() >  0) {     
          			while ($stmt->fetch()){
          				$hersteller[] = array( 
          					'h_id' 		=> $h_id, 
          					'h_titel' 	=> $h_titel, 
          					'h_titelURL' 	=> $h_titelURL, 
          					'h_status'	=> $h_status
          				);
          			}
          			return $hersteller;
          			}
          	}
          

          Funktion für die Serien

          	function serien($mysqli, $id=false) {
          		
          		$select = "SELECT s_id, s_hID, s_titel, s_titelUrl, s_status, h_titel 
          			   FROM web_serien 
          			   LEFT JOIN web_hersteller ON web_hersteller.h_id = web_serien.s_hID ";
          		
          		if ($id) {
          			$stmt = $mysqli->prepare($select . "WHERE s_hID = ?" );
          			$stmt->bind_param("s", $id);
            		} else {
          			$stmt = $mysqli->prepare($select);
          		}
          		
          		$stmt->execute();
          		$stmt->bind_result($s_id, $s_hID, $s_titel, $s_titelUrl, $s_status, $h_titel);
          		$stmt->store_result();
          	 	
          		if($stmt->num_rows() >  0) {     
          			while ($stmt->fetch()){
          				$serien[] = array( 
          					's_id' 		=> $s_id, 
          					's_hID' 	=> $s_hID, 
          					's_titel' 	=> $s_titel, 
          					's_titelUrl'	=> $s_titelUrl,
          					's_status'	=> $s_status,
          					'h_titel'	=> $h_titel
          				);
          			}
          			return $serien;
          			}
          	}
          

          Und hier meine Geräte

          function geraete($mysqli, $id=false) {
                    $select = "SELECT g_id, g_hID, g_sID, g_titel, g_titelUrl, g_status, h_titel, h_titelURL, s_titel, s_titelUrl  
          			FROM web_geraete 
          			LEFT JOIN web_hersteller ON web_hersteller.h_id = web_geraete.g_hID 
          			LEFT JOIN web_serien ON web_serien.s_id = web_geraete.g_sID ";
          		if ($id) {
          			$stmt = $mysqli->prepare($select . "WHERE g_sID = ?" );
          			$stmt->bind_param("s", $id);
            		} else {
          			$stmt = $mysqli->prepare($select);
          		}
          
          		$stmt->execute();
          		$stmt->bind_result($g_id, $g_hID, $g_sID, $g_titel, $g_titelUrl, $g_status, $h_titel, $h_titelURL, $s_titel, $s_titelUrl);
          		$stmt->store_result();
          	 	
          		if($stmt->num_rows() >  0) {     
          			while ($stmt->fetch()){
          				$geraete[] = array( 
          					'g_id' 		=> $g_id, 
          					'g_hID' 	=> $g_hID, 
          					'g_sID' 	=> $g_sID, 
          					'g_titel' 	=> $g_titel, 
          					'g_titelUrl' 	=> $g_titelUrl, 
          					'g_status'	=> $g_status,
          					'h_titelURL'	=> $h_titelURL,
          					'h_titel'	=> $h_titel,
          					's_titel'	=> $s_titel,
          					's_titelUrl'	=> $s_titelUrl
          				);
          			}
          			return $geraete;
          			}
          	}
          

          Hab einfach leicht den Überblick verloren, vielleicht kommt jetzt auch wieder von allen Seiten, das ist der größte scheiß was du machst, so darfst du das nicht machen usw. ich muss erstmal alles zum laufen bringen.

          1. Moin!

            Hab einfach leicht den Überblick verloren, vielleicht kommt jetzt auch wieder von allen Seiten, das ist der größte scheiß was du machst, so darfst du das nicht machen usw. ich muss erstmal alles zum laufen bringen.

            Ruh bewahr, langsam mach. Und nimm nicht alles persönlich, Du hast ja bestimmt schon gemerkt, dass der Gunnar heute wieder einen merkwürdigen Tag hat. Und jetzt eine Pause.

            Vorher liefere aber den Quelltext der resultierenden HTML-Seite. Hier muss nämlich einiges in JS realisiert werden und auch wenn ich gut im Spekulieren bin macht es einige Mühe herauszufinden, was da steht.

            Jörg Reinholz

            1. Hallo Jörg,

              Ruh bewahr, langsam mach. Und jetzt eine Pause

              Rhe bewahren ist leichter gesagt als getan. Ich schustere alles zusammen, dann will ich etwas ändern und stelle fest es geht nichts mehr, hab aber sämtliche Dateien schon geschlossen, also kein STRG + Z mehr. Muss alles wieder neu machen.

              Vorher liefere aber den Quelltext der resultierenden HTML-Seite.

              Was möchtest du denn genau sehen? Den Quelltext was der Browser mit liefert wenn ich die Seite aufrufe, oder wie er in der PHP Datei steht?

              1. Moin!

                Rhe bewahren ist leichter gesagt als getan.… Muss alles wieder neu machen.

                "Geheim"tipp.

                Immer mal in den Explorer gehen und den aktuellen Stand einfrieren. Einfach Zippen und Name nach dem Motto Verzeichnis_Jahr-Monat-Tag_HH_mm.zip wählen. Hat viel mit Ruhe bewahren zu schaffen - mach das am Anfang jeder Sitzung und beim Erreichen von "Meilensteinen".

                Jörg Reinholz

                1. Tach,

                  Immer mal in den Explorer gehen und den aktuellen Stand einfrieren. Einfach Zippen und Name nach dem Motto Verzeichnis_Jahr-Monat-Tag_HH_mm.zip wählen. Hat viel mit Ruhe bewahren zu schaffen - mach das am Anfang jeder Sitzung und beim Erreichen von "Meilensteinen".

                  besser noch, sich gleich an ein ordentliches Versionskontrollsystem (z.B. svn, git, mercurial) gewöhnen.

                  mfg
                  Woodfighter

                  1. @@woodfighter

                    besser noch, sich gleich an ein ordentliches Versionskontrollsystem (z.B. svn, git, mercurial) gewöhnen.

                    Sag. Ich. Doch. ;-)

                    Ähm, ist svn ein ordentliches Versionskontrollsystem? ;-)

                    Und ich muss gestehen, dass ich von mercurial außer dem Namen nichts weiß.

                    LLAP 🖖

                    --
                    Ist diese Antwort anstößig? Dann könnte sie nützlich sein.
                    1. Tach,

                      Ähm, ist svn ein ordentliches Versionskontrollsystem? ;-)

                      es ist einfacher zu lernen als die verteilten Systeme und wenn man das nicht braucht, tut es svn.

                      Und ich muss gestehen, dass ich von mercurial außer dem Namen nichts weiß.

                      Sehr ähnlich zu git https://importantshock.wordpress.com/2008/08/07/git-vs-mercurial/.

                      mfg
                      Woodfighter

                      1. Tach!

                        Ähm, ist svn ein ordentliches Versionskontrollsystem? ;-)

                        es ist einfacher zu lernen als die verteilten Systeme und wenn man das nicht braucht, tut es svn.

                        Tun tut es auch cvs. Will man aber trotzdem nicht mehr. Aber was ist schwieriger an git zu erlernen als an svn? Die drei alltägliche Befehle hat man in jedem Fall und die hat man schnell intus. Den Rest kann man sich anlesen, wenn man ihn braucht. Das Schwierigste ist wohl das Mergen, aber das fällt als Einzelkämpfer so gut wie weg und die Remote-Handlungen zwecks Datensicherung beschränken sich dann auf Push und Pull sowie einmalig nach Anleitung einen Remote-Host einrichten und lokal konfigurieren.

                        dedlfix.

                        1. @@dedlfix

                          Das Schwierigste ist wohl das Mergen, aber das fällt als Einzelkämpfer so gut wie weg

                          Warum sollte?

                          Ich lege mir für jedes zu entwickelnde Feature (wenn diese unabhängig voneinander sind) einen eigenen Branch an. So kann ein Fehlversuch oder Steckenbleiben bei einem Feature nicht die Entwicklung der anderen beeinträchtigen. Sobald das Feature fertig ist, wird der Branch gemerget.

                          Diese Arbeitsweise finde ich auch für Einzelkämpfer sinnvoll.

                          LLAP 🖖

                          --
                          Ist diese Antwort anstößig? Dann könnte sie nützlich sein.
                        2. Tach,

                          Tun tut es auch cvs.

                          das hat diese Probleme mit nicht-Textdateien...

                          Will man aber trotzdem nicht mehr. Aber was ist schwieriger an git zu erlernen als an svn?

                          Im wesentlichen nur die klare Server/Client-Architektur, wenn ich alleine arbeite ist ein commit alles, was ich brauche, um die neue Version auf den Server zu schieben, wo das Backup läuft; aber du hast schon Recht, gleich git zu lernen ist besser.

                          mfg
                          Woodfighter

              2. Hi,

                Ruh bewahr, langsam mach. Und jetzt eine Pause

                Rhe bewahren ist leichter gesagt als getan. Ich schustere alles zusammen, dann will ich etwas ändern und stelle fest es geht nichts mehr, hab aber sämtliche Dateien schon geschlossen, also kein STRG + Z mehr. Muss alles wieder neu machen.

                daraus erkenne ich zwei Probleme.

                Zum einen deinen Wissensstand: Das hört sich an, als ob du einfach Vorschläge ausprobierst, ohne zu verstehen, was sie eigentlich bewirken oder womit sie kollidieren könnten. Das ist für einen Anfänger keine Schande, aber anhand deiner Beiträge entsteht der Eindruck, dass du inzwischen doch recht weit in die Materie eingedrungen bist, da sollte ein wenig Basiswissen eigentlich zu erwarten sein.

                Zweitens, dass deine Arbeitsweise ... äh, suboptimal ist. Wenn ich eine Fassung eines Projekts habe, die einigermaßen in Ordnung ist, dann lass ich die auf jeden Fall in Ruhe und probiere Änderungen unter neuen Dateinamen oder in einem neuen Verzeichnis aus, so dass ich mühelos zur alten Version zurückkehren kann.

                By the way, was meinst du mit Strg-Z? Das ist das ASCII-Zeichen für EOF (End Of File). Meinst du vielleicht die Undo-Funktion, die traditionell mit Alt-Backspace, in manchen Programmen aber auch neumodisch mit Ctrl-Z ausgelöst wird?

                Vorher liefere aber den Quelltext der resultierenden HTML-Seite.

                Was möchtest du denn genau sehen? Den Quelltext was der Browser mit liefert wenn ich die Seite aufrufe, oder wie er in der PHP Datei steht?

                Kommt drauf an, ob es um clientseitige oder um serverseitige Aspekte geht.

                So long,
                 Martin

                1. Hallo Martin,

                  By the way, was meinst du mit Strg-Z? Das ist das ASCII-Zeichen für EOF (End Of File). Meinst du vielleicht die Undo-Funktion, die traditionell mit Alt-Backspace, in manchen Programmen aber auch neumodisch mit Ctrl-Z ausgelöst wird?

                  STRG + Z ist bei Windows zumindest bei mir alles Rückgängig machen :) Brauche ich sehr oft, geht aber leider nur, solange ich die Datei nicht geschlossen habe.

                  Ich werde in Zukunft auch nach jedem größten Stepp ein Backup machen bevor ich an größere Änderungen wie meine Suche z.B. gehe.

                  1. @@Jnnbo

                    Wenn ich eine Fassung eines Projekts habe, die einigermaßen in Ordnung ist, dann lass ich die auf jeden Fall in Ruhe und probiere Änderungen unter neuen Dateinamen oder in einem neuen Verzeichnis aus, so dass ich mühelos zur alten Version zurückkehren kann.

                    Anstatt neuem Dateinamen oder neuem Verzeichnis möchtest du vielleicht ein Versionskontrollsystem nutzen. git mit github oder bitbucket bieten sich an.

                    STRG + Z ist bei Windows zumindest bei mir alles Rückgängig machen :) Brauche ich sehr oft, geht aber leider nur, solange ich die Datei nicht geschlossen habe.

                    Du möchtest ganz gewiss ein Versionskontrollsystem nutzen.

                    LLAP 🖖

                    --
                    Ist diese Antwort anstößig? Dann könnte sie nützlich sein.
                    1. Hallo Gunnar,

                      Anstatt neuem Dateinamen oder neuem Verzeichnis möchtest du vielleicht ein Versionskontrollsystem nutzen. git mit github oder bitbucket bieten sich an.

                      du meinst so wie Christian es mit dem Forum hier macht? Problem ist, mein Englisch ist jetzt nicht 100% sicher und mit github habe ich mich noch gar nie beschäftigt.

                      1. Tach,

                        Anstatt neuem Dateinamen oder neuem Verzeichnis möchtest du vielleicht ein Versionskontrollsystem nutzen. git mit github oder bitbucket bieten sich an.

                        du meinst so wie Christian es mit dem Forum hier macht?

                        github o.ä. ist nicht nötig, wobei ein ordentlicher Bugtracker der direkt mit dem Repository verbunden ist, schon recht nett ist.

                        Problem ist, mein Englisch ist jetzt nicht 100% sicher und mit github habe ich mich noch gar nie beschäftigt.

                        https://rogerdudler.github.io/git-guide/index.de.html ist eine Kurzaanleitung für git auf deutsch; langfristig gesehen solltest du an deinem Englisch arbeiten, das ist die übliche Arbeitssprache in der du Dokumentation finden wirst.

                        mfg
                        Woodfighter

                      2. Hallo Jnnbo,

                        Anstatt neuem Dateinamen oder neuem Verzeichnis möchtest du vielleicht ein Versionskontrollsystem nutzen. git mit github oder bitbucket bieten sich an.

                        du meinst so wie Christian es mit dem Forum hier macht?

                        Dass du Github für git nicht brauchst, wurde dir ja schon gesagt. Aber ansonsten: ja, das ist gemeint. Da kannst du dann jede Änderung im Nachhinein ansehen und Rückgängig machen. Alles, was du je an deinem Sourcecode gemacht hast, ist dann in der History enthalten. Schau dir z.B. mal das hier an:

                        https://github.com/ckruse/cforum/commits/master/app/views/cf_forums/index.html.erb

                        Das ist die Historie der Hauptseite.

                        LG,
                        CK

                        1. Tach!

                          Da kannst du dann jede Änderung im Nachhinein ansehen und Rückgängig machen. Alles, was du je an deinem Sourcecode gemacht hast, ist dann in der History enthalten.

                          Das setzt "nur" voraus, dass man jede kleine Änderung auch in einem neuen Commit ablegt. Mir fällt das schwer, weil ich mitunter sozusagen mit vielen Subroutinen arbeite und meist irgendwo was angefangenes rumfliegt, zu dem erstmal die dafür notwendigen Dinge fertig gestellt werden müssen, um einen sinnvollen Commit zu bekommen. Und dann sieht man nebenbei noch was, was auch noch eine neue Baustelle aufreißt. Immerhin, meist behalte ich trotzdem die Übersicht und weiß wo überall noch was zu Ende gebracht werden muss. Und dann finden sich nur noch Commits mit der Bemerkung "Stand $datum" in der Liste.

                          dedlfix.

                          1. Hallo dedlfix,

                            Das setzt "nur" voraus, dass man jede kleine Änderung auch in einem neuen Commit ablegt. Mir fällt das schwer, weil ich mitunter sozusagen mit vielen Subroutinen arbeite und meist irgendwo was angefangenes rumfliegt, zu dem erstmal die dafür notwendigen Dinge fertig gestellt werden müssen, um einen sinnvollen Commit zu bekommen.

                            Ich kenne das Problem. Aber dank dem Index bei Git, mit dem man einzelne Zeilen einer Datei in die Staging Area packen kann, sollte sich das leichter umsetzen lassen; mir hat das stark geholfen (auch wenn ich es auch nicht immer umsetze, weil mir dann manchmal doch die Disziplin fehlt).

                            Auch geholfen hat mir die Einsicht, dass Versionierung bei Monster-Commits nutzlos ist.

                            LG,
                            CK

                            1. Tach!

                              Ich kenne das Problem. Aber dank dem Index bei Git, mit dem man einzelne Zeilen einer Datei in die Staging Area packen kann, sollte sich das leichter umsetzen lassen; mir hat das stark geholfen.

                              Ja, das kann helfen. Aber dann weiß ich bei umfangreichen Änderungen nicht unbedingt, ob ich die richtigen Zeilen gewählt habe, so dass sich weiterhin ein lauffähiges Etwas ergibt. Das ist ja nicht getestet, wenn ich erst im git eine Auswahl treffe.

                              Am Ende brauch ich auch irgendeinen Kompromiss zwischen dem Aufwand für die Verwaltung meines Codes und dem für dessen Verwaltungsverwaltung.

                              Und dann war da noch der PhpStorm, der selbständig die Vergangenheit erfasst

                              Auch geholfen hat mir die Einsicht, dass Versionierung bei Monster-Commits nutzlos ist.

                              Die hab ich schon, auch dass man den Kommentar im Hinblick auf spätere Verwendbarkeit formulieren sollte und Nichtssagendes unbrauchbar werden wird. Ich müsste aber meine Arbeitsweise umstellen und mehr issue-weise vorgehen. Das ist aber etwas, das leichter vorgenommen als realisert ist.

                              dedlfix.

                              1. Hallo dedlfix,

                                Das ist aber etwas, das leichter vorgenommen als realisert ist.

                                Wie gesagt, ich kenne das Problem und fühle mit dir. Ich hatte das lange Zeit lang auch und habe es manchmal immer noch.

                                LG,
                                CK

                              2. Hallo

                                Ich kenne das Problem. Aber dank dem Index bei Git, mit dem man einzelne Zeilen einer Datei in die Staging Area packen kann, sollte sich das leichter umsetzen lassen; mir hat das stark geholfen.

                                Ja, das kann helfen. Aber dann weiß ich bei umfangreichen Änderungen nicht unbedingt, ob ich die richtigen Zeilen gewählt habe, so dass sich weiterhin ein lauffähiges Etwas ergibt. Das ist ja nicht getestet, wenn ich erst im git eine Auswahl treffe.

                                Mit dem richtigen Client ist das auch kein Problem. Attlassians Source Tree bietet z.B. an, einzelne Zeilen für Commits zu berücksichtigen und andere nicht.

                                Du kannst also eine ganze Datei mit ihren Änderungen vormerken, …

                                Eine Datei für Commit vormerken.

                                … du kannst einen von mehreren Blöcken, die Änderungen in der Datei umfassen, vormerken …

                                Block aus einer Datei für einen Commit vormerken.

                                … und du kannst, falls ein Block mehrere verschiedene Änderungen beinhaltet, einzelne Zeilen für einen Commit vormerken.

                                Einzelne Zeilen für einen Commit vormerken.

                                Am Ende brauch ich auch irgendeinen Kompromiss zwischen dem Aufwand für die Verwaltung meines Codes und dem für dessen Verwaltungsverwaltung.

                                Das ist wohl war. Wie ihr schon sagtet, das ist eine Arbeitsweise, die Disziplin erfordert. Die zahlt sich allerdings im Nachhinein mit an Sicherheit grenzender Wahrscheinlichkeit aus.

                                Tschö, Auge

                                --
                                Es schimmerte ein Licht am Ende des Tunnels und es stammte von einem Flammenwerfer.
                                Terry Pratchett, „Gevatter Tod“
                    2. Tach!

                      Anstatt neuem Dateinamen oder neuem Verzeichnis möchtest du vielleicht ein Versionskontrollsystem nutzen. git mit github oder bitbucket bieten sich an.

                      Was will man denn mit github, wenn man sein Projekt nie veröffentlichen möchte - abgesehen davon, dass man da auch gegen Entgelt private Repositorys einrichten kann?

                      dedlfix.

                      1. @@dedlfix

                        Was will man denn mit github, wenn man sein Projekt nie veröffentlichen möchte - abgesehen davon, dass man da auch gegen Entgelt private Repositorys einrichten kann?

                        Ich hatte den Gedanken im Kopf, nur bis zur Hand hat er’s nicht geschafft. Ja, Github ist öffentlich, oder man muss für den Service bezahlen.

                        Atlassian verdient wohl an Jira etc. gut genug, dass sie Bitbucket kostenlos anbieten können.

                        LLAP 🖖

                        --
                        Ist diese Antwort anstößig? Dann könnte sie nützlich sein.
                2. Moin!

                  Zum einen deinen Wissensstand: Das hört sich an, als ob du einfach Vorschläge ausprobierst, ohne zu verstehen, was sie eigentlich bewirken oder womit sie kollidieren könnten. Das ist für einen Anfänger keine Schande, aber anhand deiner Beiträge entsteht der Eindruck, dass du inzwischen doch recht weit in die Materie eingedrungen bist, da sollte ein wenig Basiswissen eigentlich zu erwarten sein.

                  Hehe. Er lernt PHP, MySQL, HTML, CSS, JS auf einmal. Für diese heftige Aufgabe geht es sogar recht schnell.

                  Jörg Reinholz

                  1. Hallo und guten Morgen,

                    Zum einen deinen Wissensstand: Das hört sich an, als ob du einfach Vorschläge ausprobierst, ohne zu verstehen, was sie eigentlich bewirken oder womit sie kollidieren könnten. Das ist für einen Anfänger keine Schande, aber anhand deiner Beiträge entsteht der Eindruck, dass du inzwischen doch recht weit in die Materie eingedrungen bist, da sollte ein wenig Basiswissen eigentlich zu erwarten sein.

                    Hehe. Er lernt PHP, MySQL, HTML, CSS, JS auf einmal. Für diese heftige Aufgabe geht es sogar recht schnell.

                    Nur das Zuhören bzw. aufmerksame Lesen der Vorschläge und Bemerkungen hat er immer noch nicht gelernt. siehe http://forum.selfhtml.org/self/2015/jun/26/session-durch-klick-loeschen/1644154#m1644154. Das kostet ihn und seine Helfer viel Zeit und viele Nerven!

                    Und ich könnte wetten, ich wüsste schon, was gleich passieren wird g


                    BTW: warum sind in der Tagliste Tags enthalten, die dann die Meldung erzeugen, "Dieser Tag existiert nicht", wenn man sie auswählt?

                    Grüße
                    TS

                    1. Hallo TS,

                      BTW: warum sind in der Tagliste Tags enthalten, die dann die Meldung erzeugen, "Dieser Tag existiert nicht", wenn man sie auswählt?

                      Kann ich mir nur unter den Umständen vorstellen, dass in der Zwischenzeit jemand den Tag gelöscht hat. Um welchen Tag ging es denn?

                      LG,
                      CK

                      1. Hallo,

                        warum sind in der Tagliste Tags enthalten, die dann die Meldung erzeugen, "Dieser Tag existiert nicht", wenn man sie auswählt?

                        Kann ich mir nur unter den Umständen vorstellen, dass in der Zwischenzeit jemand den Tag gelöscht hat. Um welchen Tag ging es denn?

                        Wahrscheinlich um den 30. Februar...

                        Gruß
                        Kalk

                        1. Hallo Tabellenkalk,

                          Kann ich mir nur unter den Umständen vorstellen, dass in der Zwischenzeit jemand den Tag gelöscht hat. Um welchen Tag ging es denn?

                          Wahrscheinlich um den 30. Februar...

                          Made my day ;-)

                          LG,
                          CK

                        2. Hallo und guten Tag,

                          warum sind in der Tagliste Tags enthalten, die dann die Meldung erzeugen, "Dieser Tag existiert nicht", wenn man sie auswählt?

                          Kann ich mir nur unter den Umständen vorstellen, dass in der Zwischenzeit jemand den Tag gelöscht hat. Um welchen Tag ging es denn?

                          Wahrscheinlich um den 30. Februar...

                          Das ist jetzt aber unfair! Der war/ist in meiner Auswahlliste überhaupt nicht enthalten! Den hätte ich gerne auch mal ausprobiert.

                          Grüße
                          TS

                      2. Hallo und guten Morgen,

                        BTW: warum sind in der Tagliste Tags enthalten, die dann die Meldung erzeugen, "Dieser Tag existiert nicht", wenn man sie auswählt?

                        Kann ich mir nur unter den Umständen vorstellen, dass in der Zwischenzeit jemand den Tag gelöscht hat. Um welchen Tag ging es denn?

                        um zwei:

                        • nachsitzen
                        • ??? habe ich vergessen

                        Grüße
                        TS

                        1. Hallo TS,

                          • nachsitzen

                          Und der wurde dir in der Vorschlagsliste tatsächlich angezeigt? Denn eigentlich ist der auf „nicht vorschlagen“ gestellt. Und ich kann den irgendwie auch nicht rein bekommen…

                          LG,
                          CK

                          1. Alternativ-TextHallo und guten Morgen,

                            • nachsitzen

                            Und der wurde dir in der Vorschlagsliste tatsächlich angezeigt? Denn eigentlich ist der auf „nicht vorschlagen“ gestellt. Und ich kann den irgendwie auch nicht rein bekommen…

                            Ja, ich schwöre!

                            Und noch ein anderer, den ich vergessen habe. Wird wohl noch mehr Vorschläge betreffen.

                            Anbei der aktuelle Screenshot der Vorschläge.

                            Grüße
                            TS

                            1. Hallo TS,

                              Ja, ich schwöre!

                              Ich glaubs dir auch so! ;-) Danke, wir haben von unterschiedlichen Dingen gesprochen. Ich wollte auf die Tag-Vorschläge hinaus, du auf die Autovervollständigung. Da müssen natürlich auch die „deaktivierten“ Tags auftauchen. Nur die Warnung ist natürlich quatsch.

                              LG,
                              CK

                              1. Hallo Christian,

                                Ich glaubs dir auch so! ;-) Danke, wir haben von unterschiedlichen Dingen gesprochen. Ich wollte auf die Tag-Vorschläge hinaus, du auf die Autovervollständigung. Da müssen natürlich auch die „deaktivierten“ Tags auftauchen. Nur die Warnung ist natürlich quatsch.

                                Das ist so natürlich nicht ganz richtig, die sollten auch in der Liste nicht mehr auftauchen. Und so hab ich es jetzt auch gefixed.

                                LG,
                                CK

                          2. Hallo,

                            • nachsitzen

                            Und der wurde dir in der Vorschlagsliste tatsächlich angezeigt? Denn eigentlich ist der auf „nicht vorschlagen“ gestellt. Und ich kann den irgendwie auch nicht rein bekommen…

                            Ich kann mich an die gleiche Situation erinnern, die TS beschreibt, auch und grade mit dem tag "nachsitzen", kriege es aber genau wie du nicht mehr hin. Ist aber auch schon ein paar Tags her.

                            Gruß
                            Kalk

                3. Hallo,

                  By the way, was meinst du mit Strg-Z? Das ist das ASCII-Zeichen für EOF (End Of File). Meinst du vielleicht die Undo-Funktion, die traditionell mit Alt-Backspace, in manchen Programmen aber auch neumodisch mit Ctrl-Z ausgelöst wird?

                  hm, 1994 hatte ich meinen ersten Windows-Rechner. Seitdem nutze ich Strg-Z für zurück/undo. Jetzt grübel ich, ob das schon als traditionell oder noch zu neumodisch zählt.

                  Gruß
                  Kalk

                  1. Hallo und guten Morgen,

                    hm, 1994 hatte ich meinen ersten Windows-Rechner. Seitdem nutze ich Strg-Z für zurück/undo. Jetzt grübel ich, ob das schon als traditionell oder noch zu neumodisch zählt.

                    Das hat Windows nicht erfunden. Das gab es schon bei der HP-Grafik-Workstation M4.
                    Und die ist soooo (ca. 1976) alt, dass noch nicht einmal Google sie zu kennen scheint.

                    Eigentlich könnten wir die Zeitrechnung doch jetzt auch umstellen auf "Dekaden nach Google".

                    Grüße
                    TS

                    1. Hallo,

                      Eigentlich könnten wir die Zeitrechnung doch jetzt auch umstellen auf "Dekaden nach Google".

                      lass uns das auf den Tag verschieben, an dem Google wirklich Geschichte ist...

                      Gruß
                      Kalk

                      PS: Geschichte im Sinne von "Schicht im Schacht"

                  2. Hi,

                    By the way, was meinst du mit Strg-Z? Das ist das ASCII-Zeichen für EOF (End Of File). Meinst du vielleicht die Undo-Funktion, die traditionell mit Alt-Backspace, in manchen Programmen aber auch neumodisch mit Ctrl-Z ausgelöst wird?

                    hm, 1994 hatte ich meinen ersten Windows-Rechner. Seitdem nutze ich Strg-Z für zurück/undo. Jetzt grübel ich, ob das schon als traditionell oder noch zu neumodisch zählt.

                    okay, darüber darf man gern grübeln.

                    In den semigraphischen IDEs unter DOS hatten sich Anfang der 90er Jahre aber schon einige Tastenkombinationen als Quasi-Standard etabliert. Dazu gehörten unter anderem:

                    • Ctrl-Ins: Copy
                    • Shift-Ins: Paste
                    • Shift-Del: Cut
                    • Alt-BkSp: Undo

                    Das war übrigens ein Teil dessen, was IBM schon Jahre vorher als Standard einzuführen versuchte. Das Schlagwort SAA-Standard oder SAA-Oberfläche war damals etwa so "in" wie heute beispielsweise Responsive Web Design.

                    Auch bei den Funktionstasten gab es ein paar typische Zuordnungen, etwa F1 für Hilfe, F2 für Speichern, F3 für Öffnen, die von einigen Anwendungen genau so verwendet wurden.

                    Windows, das ich mit Version 3.0 kennengelernt habe, hat zumindest für die Edit-Funktionen diese Zuordnungen übernommen und unterstützt sie noch bis heute, obwohl seit Version 4.0 (aka Windows 95) die Kürzel Ctrl-C, Ctrl-V, Ctrl-Z usw. bevorzugt dokumentiert werden und die älteren Tastenkombis wohl nur als Zugeständnis an die älteren Nutzer, die das eben noch kennen, weiter funktionieren. Übrigens auch in den Linux-Desktops, die ich bisher kennengelernt habe.

                    So long,
                     Martin

                    1. @@Der Martin

                      • Ctrl-Ins: Copy
                      • Shift-Ins: Paste
                      • Shift-Del: Cut
                      • Alt-BkSp: Undo

                      Die Tastenkombinationen hab ich schon seit Ewigkeiten nicht mehr auf dem Schirm.

                      Kürzel Ctrl-C, Ctrl-V, Ctrl-Z usw.

                      Bei OS X sind die Tastenkombinationen übrigens nicht mit [control], sondern mit [⌘ command] (f/k/a  Apfel-Taste).

                      LLAP 🖖

                      --
                      Ist diese Antwort anstößig? Dann könnte sie nützlich sein.
                      1. Moin,

                        • Ctrl-Ins: Copy
                        • Shift-Ins: Paste
                        • Shift-Del: Cut
                        • Alt-BkSp: Undo

                        Die Tastenkombinationen hab ich schon seit Ewigkeiten nicht mehr auf dem Schirm.

                        ich hatte sie mir in der damaligen Zeit angewöhnt und benutze sie seither ausschließlich. Bei den neueren Alternativen

                        Ctrl-C, Ctrl-V, Ctrl-Z usw.

                        habe ich erstens Mühe, sie mir zu merken, zweitens liegen sie für mich ungünstig, weil die linke Hand dann sehr viel häufiger zwischen Tastatur und Maus wechseln müsste. So habe ich fast alles, was mit Cursorsteuerung und Editieren zu tun hat, im Bereich der rechten Hand.

                        Schönes Wochenende noch,
                         Martin

                        1. Hallo,

                          ich hatte sie mir in der damaligen Zeit angewöhnt und benutze sie seither ausschließlich.

                          Das ist ja auch ok, bleibt bloß zu hoffen, dass sie nicht irgendwann wegfallen...

                          Bei den neueren Alternativen

                          Ctrl-C, Ctrl-V, Ctrl-Z usw.

                          habe ich erstens Mühe, sie mir zu merken,

                          Das ist einfach: Copieren, einvügen, zurück, aussxneiden, wyderholen. Und alles mit der selben Umschalttaste!

                          zweitens liegen sie für mich ungünstig, weil die linke Hand dann sehr viel häufiger zwischen Tastatur und Maus wechseln müsste. So habe ich fast alles, was mit Cursorsteuerung und Editieren zu tun hat, im Bereich der rechten Hand.

                          Da sind dann natürlich Linkshänder bevorteilt?

                          Gruß
                          Kalk

                          1. Hi,

                            Ctrl-C, Ctrl-V, Ctrl-Z usw.

                            habe ich erstens Mühe, sie mir zu merken,

                            Das ist einfach: Copieren, einvügen, zurück, aussxneiden, wyderholen. Und alles mit der selben Umschalttaste!

                            ach, wie niedlich. ;-)

                            Da gab's noch eine Gemeinheit: In einigen Programmen schließt Ctrl-W heimlich, still und leise das Dokumentfenster oder Tab. Das ist mir nämlich schon ein paarmal versehentlich passiert, wenn ich bei Ctrl-A (Alles markieren) oder Ctrl-S (Speichern) mit dem Finger übers Ziel hinausgeschossen bin und dann die Taste W erwischt habe.
                            Pfui. Für das Schließen des Dokuments gibt's doch Ctrl-F4.

                            Hast du dann für Ctrl-W auch eine Merkhilfe? Etwa wließen?

                            So habe ich fast alles, was mit Cursorsteuerung und Editieren zu tun hat, im Bereich der rechten Hand.

                            Da sind dann natürlich Linkshänder bevorteilt?

                            Dabei bin ich ja gar kein Linkshänder. Nur Linksmäuser.

                            So long,
                             Martin

                            1. Hallo Der Martin,

                              Das ist einfach: Copieren, einvügen, zurück, aussxneiden, wyderholen. Und alles mit der selben Umschalttaste!

                              ach, wie niedlich. ;-)

                              Wenn man sich noch klarmacht, dass das x wie eine Schere aussieht …

                              Hast du dann für Ctrl-W auch eine Merkhilfe? Etwa wließen?

                              wegmachen ;-)

                              Bis demnächst
                              Matthias

                              --
                              Signaturen sind bloed (Steel) und Markdown ist mächtig.
                          2. Hallo und schönen Sonnentag,
                            (der Sommer kriecht langsam näher),

                            ich hatte sie mir in der damaligen Zeit angewöhnt und benutze sie seither ausschließlich.

                            Das ist ja auch ok, bleibt bloß zu hoffen, dass sie nicht irgendwann wegfallen...

                            Bei den neueren Alternativen

                            Ctrl-C, Ctrl-V, Ctrl-Z usw.

                            habe ich erstens Mühe, sie mir zu merken,

                            Das ist einfach: Copieren, einvügen, zurück, aussxneiden, wyderholen. Und alles mit der selben Umschalttaste!

                            Ich hab mich nicht getraut, das hier zu schreiben - danke ;-)
                            Der Kandidat erhält 10 Punkte!

                            Man braucht das nämlich neuerdings wieder bei den "normalen" Tablet-Tastataturen. Da gibts die anderen Tasten nicht, die Martin erwähnt hat und die ich sonst auch immer benutzt habe.


                            Wie nannte man das eigentlich, wenn jemand immer zwei Leerzeichen machte, statt einem oder eines dort, wo es nicht erforderlich ist? Diese dämliche "zwei Leerzeichen am Ende einer Zeile" habe ich mir von dem äh tollen Kramdown nun schon so angewöhnt, dass es mir überall unterkommt.

                            Grüße
                            TS

                            1. Hallo TS,

                              Diese dämliche "zwei Leerzeichen am Ende einer Zeile" habe ich mir von dem äh tollen Kramdown nun schon so angewöhnt, dass es mir überall unterkommt.

                              Machst du bei deiner Text-
                              verarbeitung
                              auch immer
                              einen händischen Zeilenumbruch oder beginnst du mit

                              einem neuen Absatz?

                              Ich habe nur in ganz seltenen Fällen das Verlangen nach „Zeilenumbruch aber kein neuer Absatz“.

                              Bis demnächst
                              Matthias

                              --
                              Signaturen sind bloed (Steel) und Markdown ist mächtig.
                              1. Hi,

                                Diese dämliche "zwei Leerzeichen am Ende einer Zeile" habe ich mir von dem äh tollen Kramdown nun schon so angewöhnt, dass es mir überall unterkommt.

                                Machst du bei deiner Text-
                                verarbeitung
                                auch immer
                                einen händischen Zeilenumbruch oder beginnst du mit

                                einem neuen Absatz?

                                jedenfalls drücke ich da nur einmal die Enter-Taste, um einen neuen Absatz zu erzeugen. Hier brauche ich zwingend zwei. Es ist also auf jeden Fall ein anderes Handling.

                                Ich habe nur in ganz seltenen Fällen das Verlangen nach „Zeilenumbruch aber kein neuer Absatz“.

                                Selten, ja. Aber es kommt hin und wieder vor.

                                Ciao,
                                 Martin

                              2. Hallo und guten Morgen,

                                Diese dämliche "zwei Leerzeichen am Ende einer Zeile" habe ich mir von dem äh tollen Kramdown nun schon so angewöhnt, dass es mir überall unterkommt.

                                Machst du bei deiner Text-
                                verarbeitung
                                auch immer
                                einen händischen Zeilenumbruch oder beginnst du mit

                                einem neuen Absatz?

                                Ich habe nur in ganz seltenen Fällen das Verlangen nach „Zeilenumbruch aber kein neuer Absatz“.

                                Ist wohl berufsbedingt:
                                früher hieß das immer "n Zeilen (à 40 Anschläge)". Heute sind sie sogar meistens auf ca. 32 Zeichen pro Zeile runter im Satzspiegel.

                                Und außerdem gibt es da kleine und große Absätze. Ein kleiner bildet eine Sinngruppe im Text und wird von einer halben Leerzeile begrenzt, ein großer fängt ein neues (Unter-)Thema an und kann auch eine eigene Gruppenüberschrift erhalten.

                                Nicht umsonst kennt HTML auch 6 verschiedenen Überschriftsklassen.

                                Grüße
                                TS

                                1. Hi,

                                  Ich habe nur in ganz seltenen Fällen das Verlangen nach „Zeilenumbruch aber kein neuer Absatz“.

                                  Ist wohl berufsbedingt:
                                  früher hieß das immer "n Zeilen (à 40 Anschläge)". Heute sind sie sogar meistens auf ca. 32 Zeichen pro Zeile runter im Satzspiegel.

                                  40 oder sogar nur 32 Zeichen pro Zeile erscheint mir sehr wenig. Eine Zeitungsspalte?
                                  Davon abgesehen: Ist ein automatischer Zeilenumbruch nicht schon seit Urzeiten üblich, so dass man sich um diese Einzelheiten gar nicht mehr kümmern muss?

                                  Und außerdem gibt es da kleine und große Absätze. Ein kleiner bildet eine Sinngruppe im Text und wird von einer halben Leerzeile begrenzt, ein großer fängt ein neues (Unter-)Thema an

                                  Ja, diese Differenzierung habe ich in gängigen Textverarbeitungen (MS Word, LO Writer) auch schon gelegentlich vermisst.

                                  und kann auch eine eigene Gruppenüberschrift erhalten.

                                  Dann kann man den Abstand ja mit der Zwischenüberschrift regeln. Aber bei Absätzen, die einfach nur einen etwas größeren Abstand voneinander haben sollen, muss man doch wieder direkt formatieren (oder eine Absatz-Formatvorlage wie First-Of-Group oder Last-Of-Group haben).

                                  Nicht umsonst kennt HTML auch 6 verschiedenen Überschriftsklassen.

                                  Ja. Ich habe aber AFAIR selbst noch nie mehr als drei Gliederungsebenen benutzt.

                                  So long,
                                   Martin

                                  1. @@Der Martin

                                    Und außerdem gibt es da kleine und große Absätze. Ein kleiner bildet eine Sinngruppe im Text und wird von einer halben Leerzeile begrenzt, ein großer fängt ein neues (Unter-)Thema an

                                    Ja, diese Differenzierung habe ich in gängigen Textverarbeitungen (MS Word, LO Writer) auch schon gelegentlich vermisst. […] bei Absätzen, die einfach nur einen etwas größeren Abstand voneinander haben sollen, muss man doch wieder direkt formatieren (oder eine Absatz-Formatvorlage wie First-Of-Group oder Last-Of-Group haben).

                                    Nein. In den Fällen verwendet man das Element, was HTML zu diesem Zweck vorsieht: hr. “The hr element represents a paragraph-level thematic break, e.g. a scene change in a story, or a transition to another topic within a section of a reference book.” [HTML 5.1]

                                    Wie auch anderen Elementen (i, b, s, small) wurde hr die darstelleungsbezogene Bedeutung genommen und durch eine semantische ersetzt. hr steht nicht mehr für horizontal rule, sondern allgemein für einen Trenner.[^1] Das Aussehen per Default im Browser-Stylesheet ist freilich dasselbe wie früher, aber das kann man ja im Autoren-Stylesheet ändern. Bswp. * * * oder einfach nichts außer einem größeren Abstand.

                                    LLAP 🖖

                                    --
                                    Ist diese Antwort anstößig? Dann könnte sie nützlich sein. [^1]: XHTML 2 sah dafür ein separator genanntes Element vor. Hixie hat für HTML5 hr beibehalten, was aus Gründen der Abwärtskompatibilität gar nicht mal so unsinnig ist.
                                    1. Hallo Gunnar Bittersmann,

                                      Das Aussehen […] kann man ja im Autoren-Stylesheet ändern. Bswp. * * * oder einfach nichts außer einem größeren Abstand.

                                      „Warum sollte man die Lücke zwischen zwei Elementen stylen?“ Frei zitiert nach Gunnar Bittersmann.
                                      Zumal das mit * * * schwierig werden könnte wegen der Inhaltsleere des hr-Elements, falls man keine Grafik verwenden möchte.

                                      Bis demnächst
                                      Matthias

                                      --
                                      Signaturen sind bloed (Steel) und Markdown ist mächtig.
                                      1. Hallo,

                                        Zumal das mit * * * schwierig werden könnte wegen der Inhaltsleere des hr-Elements, falls man keine Grafik verwenden möchte.

                                        Da hast du wirklich eine knifflige Aufgabe gestellt. Mein Lösungsvorschlag:

                                        hr{display:none;}
                                        hr + p::before{
                                            position:relative;
                                            float:right;
                                            right:50%;
                                            top:-1em;
                                            content: "* * *";}
                                        

                                        Gruß
                                        Kalk

                                        1. @@Tabellenkalk

                                          hr + p::before{

                                          Vielleicht doch eher hr + *::before? Könnte ja auch was anderes als p nach hr folgen.

                                          position:relative;
                                          float:right;
                                          right:50%;
                                          top:-1em;
                                          

                                          Wieso nicht einfach display: block; margin: 1em 0; text-align: center?

                                          content: "* * *";}
                                          

                                          Den Abstand zwischen den Sternen könnte man auch mit letter-spacing regeln. Angabe in ly. ;-)

                                          LLAP 🖖

                                          --
                                          Ist diese Antwort anstößig? Dann könnte sie nützlich sein.
                                          1. Hallo,

                                            Vielleicht doch eher hr + *::before? Könnte ja auch was anderes als p nach hr folgen.

                                            gute Idee.

                                            Wieso nicht einfach display: block; margin: 1em 0; text-align: center?

                                            das war mir zu einfach ;p

                                            Den Abstand zwischen den Sternen könnte man auch mit letter-spacing regeln. Angabe in ly. ;-)

                                            ly findet das Wiki nur als Länderkürzl für Libyen.

                                            Gruß
                                            Kalk

                                            1. @@Tabellenkalk

                                              Den Abstand zwischen den Sternen könnte man auch mit letter-spacing regeln. Angabe in ly. ;-)

                                              ly findet das Wiki nur als Länderkürzl für Libyen.

                                              Weit daneben. ly steht tatsächlich für eine Längeneinheit (keine, die in CSS verwendet wird). Lies nochmal den Satz davor.

                                              LLAP 🖖

                                              --
                                              Ist diese Antwort anstößig? Dann könnte sie nützlich sein.
                                              1. Hallo,

                                                Weit daneben. ly steht tatsächlich für eine Längeneinheit (keine, die in CSS verwendet wird). Lies nochmal den Satz davor.

                                                Du meinst Ä, denn Joule/Meter² kann ich nicht als Längeneinheit erkennen.

                                                Gruß
                                                Kalk

                                                1. Hallo Tabellenkalk,

                                                  Weit daneben. ly steht tatsächlich für eine Längeneinheit (keine, die in CSS verwendet wird). Lies nochmal den Satz davor.

                                                  Du meinst Ä, denn Joule/Meter² kann ich nicht als Längeneinheit erkennen.

                                                  ly ist das offizielle Kurzzeichen einer Längeneinheit.

                                                  Lies nochmal den Satz davor.

                                                  Da ging es doch um Sterne. Und deren Abstand.

                                                  Bis demnächst
                                                  Matthias

                                                  --
                                                  Signaturen sind bloed (Steel) und Markdown ist mächtig.
                                                2. Hallo Tabellenkalk,

                                                  Du meinst Ä,

                                                  Unicode Character 'ANGSTROM SIGN' (U+212B)

                                                  Bis demnächst
                                                  Matthias

                                                  --
                                                  Signaturen sind bloed (Steel) und Markdown ist mächtig.
                                                  1. Hallo,

                                                    Hallo Tabellenkalk,

                                                    Du meinst Ä,

                                                    Unicode Character 'ANGSTROM SIGN' (U+212B)

                                                    Ne, den Sternenabstand in Ångstrøm zu messen, so verquer denk nicht mal ich. A-Umlaut ist doch die Astronomische Einheit.

                                                    Gruß
                                                    Kalk

                                                    1. Hi,

                                                      Du meinst Ä,

                                                      Unicode Character 'ANGSTROM SIGN' (U+212B)

                                                      Ne, den Sternenabstand in Ångstrøm zu messen, so verquer denk nicht mal ich. A-Umlaut ist doch die Astronomische Einheit.

                                                      Umlaut, soso.
                                                      Wer sowas sagt, der schreibt bestimmt auch Qülle, virtüll, Pälla oder Köxistenz. ;-)

                                                      So long,
                                                       Martin

                                                      1. Hallo,

                                                        Wer sowas sagt, der schreibt bestimmt auch Qülle, virtüll, Pälla oder Köxistenz. ;-)

                                                        und eventüll Dütt

                                                        Gruß
                                                        Kalk

                                                      2. Hi,

                                                        Umlaut, soso.
                                                        Wer sowas sagt, der schreibt bestimmt auch Qülle, virtüll, Pälla oder Köxistenz. ;-)

                                                        oder viel schlimmer: Wächter ... ;-)

                                                        cu,
                                                        Andreas a/k/a MudGuard

                                                        1. n'Abend,

                                                          Umlaut, soso.
                                                          Wer sowas sagt, der schreibt bestimmt auch Qülle, virtüll, Pälla oder Köxistenz. ;-)

                                                          oder viel schlimmer: Wächter ... ;-)

                                                          es wird dich vielleicht überraschen, aber ... ich kenne Faelle, in denen das sogar richtig ist!

                                                          *scnr*
                                                           Martin

                                                          1. Hi,

                                                            Umlaut, soso.
                                                            Wer sowas sagt, der schreibt bestimmt auch Qülle, virtüll, Pälla oder Köxistenz. ;-)

                                                            oder viel schlimmer: Wächter ... ;-)

                                                            es wird dich vielleicht überraschen, aber ... ich kenne Faelle, in denen das sogar richtig ist!

                                                            Wirklich? Egal ob auf Reisepaß, Personalausweis, Abiturzeugnis, Krankenkassenkarte, Wehrdienstausweis, Diplom, Führerschein, EC-Karte, Kreditkarte, Vereinsmitgliedskarte, ... - "Wächter" war immer falsch ...

                                                            Keine Ahnung, warum die Aussteller dieser Dokumente aus ae immer ein ä machen. Wenn man "Cžsyszčzýkowsžky" hieße, würde vermutlich dreimal nachgefragt, ob das so richtig geschrieben ist, bei "Waechter" wird's einfach gnadenlos verfälscht - selbst wenn man auf dem zugehörigen Antrag extra dick noch hinschreibt, daß es wirklich "ae" und nicht "ä" ist ...

                                                            cu,
                                                            Andreas a/k/a MudGuard

                                                            1. Tach,

                                                              Keine Ahnung, warum die Aussteller dieser Dokumente aus ae immer ein ä machen. Wenn man "Cžsyszčzýkowsžky" hieße, würde vermutlich dreimal nachgefragt, ob das so richtig geschrieben ist, bei "Waechter" wird's einfach gnadenlos verfälscht - selbst wenn man auf dem zugehörigen Antrag extra dick noch hinschreibt, daß es wirklich "ae" und nicht "ä" ist ...

                                                              bei Anträgen funktionert das a zumeist aber bei mündlicher Übermittlung ist es meist auch egal was man sagt und es wird ein e draus; aber das wäre bei deinem Namen vermutlich anders.

                                                              mfg
                                                              Woodfighter

                                                  2. @@Matthias Apsel

                                                    Unicode Character 'ANGSTROM SIGN' (U+212B)

                                                    Sollte man nicht verwenden, „preferred representation is U+00C5“.

                                                    LLAP 🖖

                                                    --
                                                    Ist diese Antwort anstößig? Dann könnte sie nützlich sein.
                                      2. @@Matthias Apsel

                                        Zumal das mit * * * schwierig werden könnte wegen der Inhaltsleere des hr-Elements, falls man keine Grafik verwenden möchte.

                                        Nix schwierig.

                                        hr { border: none }
                                        
                                        hr::before { content: "* * *" }
                                        

                                        Einfach.

                                        Leere Elemente (wie hr, meta) dürfen CSS-generierten Inhalt haben; replaced elements (wie img, input) können keinen haben.

                                        LLAP 🖖

                                        --
                                        Ist diese Antwort anstößig? Dann könnte sie nützlich sein.
                                        1. @@Gunnar Bittersmann

                                          hr { border: none }
                                          
                                          hr::before { content: "* * *" }
                                          

                                          In the wild.

                                          (Gerade mal wieder drüber gestolpert. Lesenswerer Artikel.)

                                          LLAP 🖖

                                          --
                                          Ist diese Antwort anstößig? Dann könnte sie nützlich sein.
                                    2. Hallo und guten Nachmittag,

                                      Und außerdem gibt es da kleine und große Absätze. Ein kleiner bildet eine Sinngruppe im Text und wird von einer halben Leerzeile begrenzt, ein großer fängt ein neues (Unter-)Thema an

                                      Ja, diese Differenzierung habe ich in gängigen Textverarbeitungen (MS Word, LO Writer) auch schon gelegentlich vermisst. […] bei Absätzen, die einfach nur einen etwas größeren Abstand voneinander haben sollen, muss man doch wieder direkt formatieren (oder eine Absatz-Formatvorlage wie First-Of-Group oder Last-Of-Group haben).

                                      Nein. In den Fällen verwendet man das Element, was HTML zu diesem Zweck vorsieht: hr. “The hr element represents a paragraph-level thematic break, e.g. a scene change in a story, or a transition to another topic within a section of a reference book.” [HTML 5.1]

                                      Wie auch anderen Elementen (i, b, s, small) wurde hr die darstelleungsbezogene Bedeutung genommen und durch eine semantische ersetzt. hr steht nicht mehr für horizontal rule, sondern allgemein für einen Trenner.[^1] Das Aussehen per Default im Browser-Stylesheet ist freilich dasselbe wie früher, aber das kann man ja im Autoren-Stylesheet ändern. Bswp. * * * oder einfach nichts außer einem größeren Abstand.

                                      Wäre es anstelle von <hr> dann nicht sinnvoller, auch hier <section> oder ähnliches zu benutzen? MMn sollte <hr> genauso missliebig sein, wie es <br> ist, oder das unspezifizierte <div> näher zu spezifizieren? Denn schließlich handelt es sich doch um die Zusammenfassung mehrerer <p> (oder ähnlich) zu einer Sinngruppe unterhalb einer Überschrift. Section würde dann ja sachon eher ein Element oberhalb von <h*> bedeuten, oder?

                                      Grüße
                                      TS

                                2. @@TS

                                  ein großer fängt ein neues (Unter-)Thema an und kann auch eine eigene Gruppenüberschrift erhalten.

                                  Nicht umsonst kennt HTML auch 6 verschiedenen Überschriftsklassen.

                                  Und section, article und den Outline-Algorithmus. Oh, wait …

                                  LLAP 🖖

                                  --
                                  Ist diese Antwort anstößig? Dann könnte sie nützlich sein.
                                  1. Hallo und wunderschönen Sonnentag,

                                    Nicht umsonst kennt HTML auch 6 verschiedenen Überschriftsklassen.

                                    Und section, article und den Outline-Algorithmus. Oh, wait …

                                    Mir dünkt, die Zeitungsunternehmer haben HTML übernommen. Heißen die dann in Zukunft HTMLübernehmer?

                                    Wenn nun auch noch verlässliche Seitenumbrüche mit Gruppenheadern usw. steuerbar werden, glaube ich sogar, dass PDF bald einpacken kann. Was ist eigentlich mit Attributen für <header> und <footer>? Mein Vorschlag: es müsste mehrere <header>- und <footer>-Elemente in einem Dokument geben dürfen und dann Attribute: repeatonpage=even|odd|left|right, validfrompage=13, validtopage=20, validforsection=IDsection, usw.

                                    Grüße
                                    TS

                                    1. Hallo,

                                      es müsste mehrere <header>- und <footer>-Elemente in einem Dokument geben dürfen

                                      das darf es

                                      Gruß
                                      Kalk

                                      1. Hallo Tabellenkalk,

                                        es müsste mehrere <header>- und <footer>-Elemente in einem Dokument geben dürfen

                                        das darf es

                                        Zudem wiederholen einige Browser schon ganz freiwillig den footer (@TS: die spitzen Klammern gehören nicht zum Elementnamen) auf jeder Seite.

                                        Bis demnächst
                                        Matthias

                                        --
                                        Signaturen sind bloed (Steel) und Markdown ist mächtig.
                                        1. Hallo und guten Abend,

                                          @TS: die spitzen Klammern gehören nicht zum Elementnamen

                                          Das stört micht nicht. ;-P

                                          Grüße
                                          TS

                                          1. xBegrüßungAnfangx Hallo xNameAnfangx TS xNameEndex , xBegrüßungEndex

                                            xZitatAnfangx

                                            @TS: die spitzen Klammern gehören nicht zum Elementnamen

                                            Das stört micht nicht. ;-P

                                            xZitatEndex

                                            xFragenAnfangx
                                            Bist du dir sicher? Könntest du dir vorstellen, dass es anderes stört?
                                            xFragenEndex

                                            xVerabschiedungAnfangx
                                            Gruß
                                            xNameAnfangx Kalk xNameEndex
                                            xVerabschiedungEndex

                                        2. @@Matthias Apsel

                                          die spitzen Klammern gehören nicht zum Elementnamen

                                          Wir reden dich hier auch von Tags, oder?

                                          LLAP 🖖

                                          --
                                          Ist diese Antwort anstößig? Dann könnte sie nützlich sein.
                                    2. Hallo TS,

                                      Mein Vorschlag: es müsste mehrere <header>- und <footer>-Elemente in einem Dokument geben dürfen und dann Attribute: repeatonpage=even|odd|left|right, validfrompage=13, validtopage=20, validforsection=IDsection, usw.

                                      validfrompage = fromage, validtopage ebenso. Weil HTML viel flexibler als jedes Printmedium ist. Zum einen werden HTML-Dokumente am Bildschirm meist fortlaufend dargestellt und zum anderen kannst du ein HTML-Dokument in jedem beliebigen Format ausdrucken. Du kannst also gar nicht wissen, was der Inhalt der Seite 13 sein wird.

                                      Bis demnächst
                                      Matthias

                                      --
                                      Signaturen sind bloed (Steel) und Markdown ist mächtig.
                                      1. Hallo,

                                        Mein Vorschlag: es müsste mehrere <header>- und <footer>-Elemente in einem Dokument geben dürfen und dann Attribute: repeatonpage=even|odd|left|right, validfrompage=13, validtopage=20, validforsection=IDsection, usw.

                                        validfrompage = fromage

                                        naja, Käse ist natürlich Geschmackssache. Meinetwegen gern. :-)
                                        Oder wolltest du sagen: Vergiss es, das ist Käse?
                                        Ach, wie ich so lustige Tippfehler liebe ...

                                        Weil HTML viel flexibler als jedes Printmedium ist. Zum einen werden HTML-Dokumente am Bildschirm meist fortlaufend dargestellt und zum anderen kannst du ein HTML-Dokument in jedem beliebigen Format ausdrucken. Du kannst also gar nicht wissen, was der Inhalt der Seite 13 sein wird.

                                        Das stimmt natürlich. Sonderfälle wie erste Seite oder letzte Seite ergeben zwar dennoch Sinn, konkrete Seitennummern jedoch erst in Verbindung mit einer Druckvorschau, die auf das gewünschte Ausgabemedium abgestimmt ist. Seitenzahlen sind also höchstens als Eingabe vom GUI aus sinnvoll, nicht als Angabe im Dokument.

                                        So long,
                                         Martin

                                        1. Hallo und guten Morgen,

                                          Mein Vorschlag: es müsste mehrere <header>- und <footer>-Elemente in einem Dokument geben dürfen und dann Attribute: repeatonpage=even|odd|left|right, validfrompage=13, validtopage=20, validforsection=IDsection, usw.

                                          Na gut, dann eben nochmal für Langsamdenker:

                                          Mein Vorschlag: es müsste mehrere header- und footer-Elemente in einem Dokument geben dürfen und dann Attribute: repeatonpage=even|odd|left|right, validfrompage=M13, validtopage=M20, validforsection=IDsection, usw.

                                          Grüße
                                          TS

                                          1. Hallo TS,

                                            Mein Vorschlag: es müsste mehrere header- und footer-Elemente in einem Dokument geben dürfen […]

                                            Ich weiss nicht, wie du darauf kommst, dass das nicht erlaubt ist. Jedes Dokument kann soviele header und footer enthalten, wie der Autor lustig ist. Beim header ist das auch ganz klar, es soll „nur“ den Header einer Sektion des Dokuments kapseln. Beim Footer sieht es ähnlich aus: es bildet den Footer des ersten übergeordneten sectioning element.

                                            LG,
                                            CK

                                        2. Hallo Der Martin,

                                          validfrompage = fromage

                                          Weil […]

                                          Das stimmt natürlich. Sonderfälle wie erste Seite oder letzte Seite ergeben zwar dennoch Sinn, konkrete Seitennummern jedoch erst in Verbindung mit einer Druckvorschau, die auf das gewünschte Ausgabemedium abgestimmt ist. Seitenzahlen sind also höchstens als Eingabe vom GUI aus sinnvoll, nicht als Angabe im Dokument.

                                          Oder wolltest du sagen: Vergiss es, das ist Käse?
                                          Ach, wie ich so lustige Tippfehler liebe ...

                                          Genau das wollte ich sagen, deshalb ist es auch kein Tippfehler.

                                          Bis demnächst
                                          Matthias

                                          --
                                          Signaturen sind bloed (Steel) und Markdown ist mächtig.
                                          1. Hallo und guten Morgen,

                                            validfrompage = fromage

                                            Weil […]

                                            Oder wolltest du sagen: Vergiss es, das ist Käse?
                                            Ach, wie ich so lustige Tippfehler liebe ...

                                            Genau das wollte ich sagen, deshalb ist es auch kein Tippfehler.

                                            Das war wieder eins von den Postings mit höher Qulität bei geringer Güte :-(

                                            Ich rechne aber immer noch damit, dass irgendwann auch hier das Mitdenken das hier übliche Gegendenken ersetzt. Die Hoffnung stirbt zuletzt.

                                            Grüße
                                            TS

                                            1. Hallo TS,

                                              Das war wieder eins von den Postings mit höher Qulität bei geringer Güte :-(

                                              Ich rechne aber immer noch damit, dass irgendwann auch hier das Mitdenken das hier übliche Gegendenken ersetzt. Die Hoffnung stirbt zuletzt.

                                              Das ist kein Gegendenken, ich wollte dir nur aufzeigen, dass eine Angabe "Gültig für die Seiten 13-28" wenig sinnvoll ist, weil du (im Gegensatz zu PDF) nicht wissen kannst, wie deine Seiten aufgeteilt werden. Auch eine Seite war früher möglich. Ich weiß garnicht, ob das Endlospapier, das früher für Nadeldrucker gang und gäbe war, noch verwendet wird.

                                              Bis demnächst
                                              Matthias

                                              --
                                              Signaturen sind bloed (Steel) und Markdown ist mächtig.
                                              1. Hallo,

                                                Ich weiß garnicht, ob das Endlospapier, das früher für Nadeldrucker gang und gäbe war, noch verwendet wird.

                                                wird es, aber wohl nur noch selten(st) im Office-Bereich. Aber für Protokolldrucker durchaus. Nur die Bezeichnung Endlospapier ist irreführend: Es ist nämlich immer gerade dann zu Ende, wenn man am wenigesten damit rechnet.

                                                So long,
                                                 Martin

                                              2. @@Matthias Apsel

                                                Ich weiß garnicht, ob das Endlospapier, das früher für Nadeldrucker gang und gäbe war, noch verwendet wird.

                                                Sonst wäre die Tora ja eine Bibel. Allerdings wird die handgeschrieben, nicht mit Nadeldrucker gedruckt.

                                                LLAP 🖖

                                                --
                                                Ist diese Antwort anstößig? Dann könnte sie nützlich sein.
                                              3. Liebe Mitdenker, liebe Wissende, liebe Neugierige,

                                                Das war wieder eins von den Postings mit höher Qulität bei geringer Güte :-(

                                                Ich rechne aber immer noch damit, dass irgendwann auch hier das Mitdenken das hier übliche Gegendenken ersetzt. Die Hoffnung stirbt zuletzt.

                                                Das ist kein Gegendenken, ich wollte dir nur aufzeigen, dass eine Angabe "Gültig für die Seiten 13-28" wenig sinnvoll ist, weil du (im Gegensatz zu PDF) nicht wissen kannst, wie deine Seiten aufgeteilt werden. Auch eine Seite war früher möglich. Ich weiß garnicht, ob das Endlospapier, das früher für Nadeldrucker gang und gäbe war, noch verwendet wird.

                                                Das ist mMn zu kurz gedacht von Dir!

                                                Es hängt vom gewählten Ausgabemedium und den passenden Größenangaben für alle Elemente ab. Wir bemühen uns schon lange, PDF überall dort durch HTML zu ersetzen, wo dies möglich ist und stellen dabei fest, dass wir dem Ziel immer näher kommen.

                                                Das scnlimmste, was uns ständig vom Erreichen abhält, sind die bornierten Zeitgenossen, die immer behaupten, HTML sei nur für den Bildschirm da.

                                                Ich freu mich schon auf den Tag, an dem @page, die Margin-Steuerung für den Druck, die header- und footer-Steuerung in allen Browsern funktioniert. Dann ist es nämlich nicht mehr notwendig, immer (mindestens) zwei Dokumenttypen (HTML & PDF) zu bauen.

                                                Spirituelle Grüße
                                                Euer Robert
                                                robert.r@online.de

                                                --
                                                Möge der wahre Forumsgeist ewig leben!
                                            2. Hallo,

                                              Ich rechne aber immer noch damit, dass irgendwann auch hier das Mitdenken das hier übliche Gegendenken ersetzt. Die Hoffnung stirbt zuletzt.

                                              irgendwer[1] hat mal sinngemäß gesagt, „nur wer widerspricht, kommt der Wahrheit näher“.

                                              Gruß
                                              Kalk


                                              1. wahrscheinlich wars das Internet. ↩︎

                                              1. Hi,

                                                irgendwer[1] hat mal sinngemäß gesagt, „nur wer widerspricht, kommt der Wahrheit näher“.

                                                ich kenne das als "alte Journalisten-Weisheit" und würde daher schätzen, dass der Spruch älter ist als das Internet:
                                                Um die Wahrheit zu erfahren, muss man den Menschen widersprechen.

                                                Aber im Internet steht/stand das bestimmt auch schon unzählige Male.

                                                So long,
                                                 Martin


                                                1. wahrscheinlich wars das Internet. ↩︎

                                              2. @@Tabellenkalk

                                                irgendwer¹ hat mal sinngemäß gesagt, „nur wer widerspricht, kommt der Wahrheit näher“.

                                                ¹ wahrscheinlich wars das Internet.

                                                Konfuzius war’s. Oder nicht?

                                                Dann war’s Lincoln.

                                                LLAP 🖖

                                                --
                                                Ist diese Antwort anstößig? Dann könnte sie nützlich sein.
                  3. Hallo Tabellenkalk,

                    hm, 1994 hatte ich meinen ersten Windows-Rechner. Seitdem nutze ich Strg-Z für zurück/undo. Jetzt grübel ich, ob das schon als traditionell oder noch zu neumodisch zählt.

                    Neumodischer Krimskrams. The one, true and only way ist natürlich Emacs C-x u ;-)

                    LG,
                    CK

                  4. @@Tabellenkalk

                    hm, 1994 hatte ich meinen ersten Windows-Rechner. Seitdem nutze ich Strg-Z für zurück/undo.

                    Und Strg-Y für vor/undo undo.

                    Führt bei mir öfter zu Verwechslungen, wenn jemand einen anderen Tastaturtreiber eingestellt hat und Z und Y vertauscht sind.

                    LLAP 🖖

                    --
                    Ist diese Antwort anstößig? Dann könnte sie nützlich sein.
              3. Moin!

                Was möchtest du denn genau sehen? Den Quelltext was der Browser mit liefert wenn ich die Seite aufrufe, oder wie er in der PHP Datei steht?

                Es geht um die nötigen Javascripte ... und darum, diese rechtzeitig und richtig zu erzeugen. Das nötige PHP scheine ich zu haben. Aber den HTML-Quelltext, wie er im Browser ankommt noch nicht.

                Jörg Reinholz

                1. Hallo Jörg,

                  Es geht um die nötigen Javascripte ... und darum, diese rechtzeitig und richtig zu erzeugen. Das nötige PHP scheine ich zu haben. Aber den HTML-Quelltext, wie er im Browser ankommt noch nicht.

                  Mein kompletter jQuery Code sieht so aus

                      $(document).ready(function(){
                  		
                  		$('#hersteller').change(function(){
                  			$.post(
                  				'inc/auslesen-serie.php',
                  				{h_id:$('#hersteller').val()},
                  			function(res){
                  				$('#serien').html(res);
                  			});
                  			
                  		$('#geraete')
                  				.find('option')
                  				.remove()
                  				.end()
                  				.append('<option value="0">-- Bitte wählen --</option>')
                  				.val('0');
                  		});
                  				 
                  		$('#serien').change(function(){
                  			$.post(
                  				'inc/auslesen-geraete.php',
                  				{s_id:$('#serien').val()},
                  			function(res){
                  				$('#geraete').html(res);
                  			});
                  		});
                   });			
                  

                  Das fertige HTML (der Teil um welches es geht sieht so aus)

                  <select name="hersteller" id="hersteller">
                          <option value="">-- Bitte wählen --</option>
                  	<option value="1">Brother</option>
                          <option value="2">Canon</option>
                          <option value="3">Dell</option>
                          <option value="4">Epson</option>
                          <option value="5">HP</option>
                  </select>
                  
                  <select name="serien" id="serien">
                         <option value="">-- Bitte wählen --</option>
                         <option value="863">Fax-COM</option>
                         <option value="864">Keine Serie</option>
                         <option value="865">T-Fax</option>
                  </select>
                  
                  <select name="geraete" id="geraete">
                        <option value="">-- Bitte wählen --</option>
                        <option value="1">Fax-Com 337</option>
                  </select>
                  
                  <button type="submit" name="test">Artikel suchen</button>
                  

                  Der Vorgang ist:

                  1.) Ich wähle den Hersteller in diesem Fall "Brother" 2.) Anschließend wird die Serie gewählt, in diesem Fall "Fax-COM" 3.) Im letzten Schritt wird das Gerät gewählt, hier z.B. das Fax-Com 337

                  Nach Schritt 3 wird dann auf den Button abschicken geklickt und die Daten werden an die Datenbank geschickt, dafür habe ich wieder eine Funktion (die auch komplett funktioniert)

                  $produkt_suche = produkt_suche($mysqli, $herstellr_suche, $serie_suche, $gerate_suche);
                  

                  Die Hersteller werden so eingebunden

                  <select name="hersteller" id="hersteller" required>
                    <option value="">-- Bitte wählen --</option>
                  <?php  $hersteller = hersteller($mysqli); foreach($hersteller as $array){ ?>
                       <option value="<?php echo $array['h_id'];?>"><?php echo $array['h_titel'];?></option>
                  <?php } ?>
                  </select>
                  

                  Die Serien (die Datei die über jQuery aufgerufen wird, sieht so aus)

                  <?php 
                  require_once 'zugangsdaten.php';
                  require_once '../include/config.php';
                  require_once '../include/functions/uebersicht.php';
                  
                  if (isset($_POST['h_id']) && $_POST['h_id'] != ""){ $neu = $_POST['h_id'];
                  ?>
                  <option value="">-- Bitte wählen --</option>
                  <?php $serien = serien($mysqli, $neu); foreach($serien as $array){ ?>
                     <option value="<?php echo $array['s_id'];?>"><?php echo $array['s_titel'];?></option>
                  <?php }} ?>
                  

                  Die letzte Datei für die Geräte sieht so aus (auch die wird über jQuery aufgerufen)

                  <?php 
                  require_once 'zugangsdaten.php';
                  require_once '../include/config.php';
                  require_once '../include/functions/uebersicht.php';
                  
                  if (isset($_POST['s_id']) && $_POST['s_id'] != ""){ $neu = $_POST['s_id'];
                  ?>
                  <option value="">-- Bitte wählen --</option>
                  <?php  $geraete = geraete($mysqli, $neu); foreach($geraete as $array){ ?>
                     <option value="<?php echo $array['g_id'];?>"><?php echo $array['g_titel'];?></option>
                  <?php }} ?>
                  
            2. @@Jörg Reinholz

              Du hast ja bestimmt schon gemerkt, dass der Gunnar heute wieder einen merkwürdigen Tag hat.

              ?? Ich bin heute nicht merkwürdiger als an anderen Tagen. (Mag sein, dass du mich immer merkwürdig findest.)

              Wenn du auf die Negativbewertung für dein Posting anspielst, da gilt genau dasselbe was ich letztens Jnnbo sagte.

              LLAP 🖖

              --
              Ist diese Antwort anstößig? Dann könnte sie nützlich sein.
          2. @@Jnnbo

            Derzeit sieht mein Code so aus:

            <input type=\"radio\" name=\"preis\" id=\"".htmlspecialchars($record['p_code'])."-preis1\" value=\"$preis1\" onClick=\"document.getElementById('button_".htmlspecialchars($record['p_code'])."').disabled=false;\">
            <label for=\"".htmlspecialchars($record['p_code'])."-preis1\">$preis1</label>
            

            Sieht furchtbar aus.

            Nicht HTML in PHP schachteln, sondern PHP in HTML. Aber das kann man dir auch immer wieder sagen …

            <input type="radio" name="preis" id="<?= htmlspecialchars($record['p_code']) ?>-preis1" value="<?= $preis1 ?>" onClick="document.getElementById('button_<?= htmlspecialchars($record['p_code']) ?>').disabled=false;">
            <label for="<?= htmlspecialchars($record['p_code']) ?>-preis1"><?= $preis1 ?></label>
            

            Das erste Select Feld sieht so aus

             <select name="hersteller" id="hersteller" required>
                       <option value="">-- Bitte wählen --</option>
            			<?php 
                            $hersteller = hersteller($mysqli);
                            foreach($hersteller as $array){ ?>
                          <option value="<?php echo $array['h_id'];?>"><?php echo $array['h_titel'];?></option>
                        <?php } ?>
             </select>
            

            Die Zeile $hersteller = hersteller($mysqli); gehört vielleicht eher woanders hin. Wenn schon nicht in eine andere Datei (Controller?), dann an den Anfang dieser – vor <!DOCTYPE html>. EVA-Prinzip: Eingabe – Verarbeitung – Ausgabe.

            Und keine geschweiften Klammern bei der Ausgabe (View)! Auch das hatten wir schon.

            <?php 
              $hersteller = hersteller($mysqli);
            ?>
            
            <select name="hersteller" id="hersteller" required>
              <option value="">-- Bitte wählen --</option>
            <? php foreach($hersteller as $array): ?>
              <option value="<?php echo $array['h_id'];?>"><?php echo $array['h_titel'];?></option>
            <?php endforeach; ?>
            </select>
            

            Hab einfach leicht den Überblick verloren

            Das könnte an deiner Schreibweise liegen.

            Wieso muss man dir eigentlich immer wieder dasselbe nochmal und nochmal sagen? Es macht wenig Spaß dir zu antworten, wenn du sowieso alles in den Wind schlägst. Auch das hatten wir schon.

            LLAP 🖖

            --
            Ist diese Antwort anstößig? Dann könnte sie nützlich sein.
            1. Tach!

              Sieht furchtbar aus.

              Nicht HTML in PHP schachteln, sondern PHP in HTML. Aber das kann man dir auch immer wieder sagen …

              Dann gibs doch auf. Es ist sein Code, seine Entscheidung und sein Problem mit der späteren Wartbarkeit.

              Und keine geschweiften Klammern bei der Ausgabe (View)! Auch das hatten wir schon.

              Das ist weder ein Fehler noch gibt es ein Gesetz oder gar einen allgmeein anerkannten Coding Style, dem er sich unterzuordnen entschieden hätte. Wenn er das so mag und nicht umstellen will, dann muss man da nicht ständig draufrumreiten.

              Wieso muss man dir eigentlich immer wieder dasselbe nochmal und nochmal sagen? Es macht wenig Spaß dir zu antworten, wenn du sowieso alles in den Wind schlägst. Auch das hatten wir schon.

              Du lernst aber auch nicht dazu, oder?

              Wenn du für die Archivleser den deiner Meinung nach schlechten Code anprangern möchtest, dann sprich doch zu denen, wenn dir die Lernschwierigkeiten von Jnnbo Probleme bereiten.

              dedlfix.

              1. Hallo und guten Morgen,

                Nicht HTML in PHP schachteln, sondern PHP in HTML. Aber das kann man dir auch immer wieder sagen …

                Das ist auch keinesfalls die absolute Weisheit.

                Besser wäre es, passive HTML-Templates als "Skeleton" aufzubauen und dann die durch Daten bedingten Veränderungen mittels PHP und DOM-Mehoden dort einzusetzen oder bei reinen Datenwerten (ohne zusätzliches Markup) mit Platzhalteren zu arbeiten, die dann mittels PHP ersetzt werden.

                Das führt dann zu der anzustrebenden Trennung von HTML und PHP. Die HTML-Templates sind dann leicht austauschbar, nahezu beliebig modifizierbar, ohne dadurch Zugriff auf die Programmfunktionen gestatten zu müssen.

                Grüße
                TS

                1. Hallo TS,

                  Besser wäre es, passive HTML-Templates als "Skeleton" aufzubauen und dann die durch Daten bedingten Veränderungen mittels PHP und DOM-Mehoden dort einzusetzen oder bei reinen Datenwerten (ohne zusätzliches Markup) mit Platzhalteren zu arbeiten, die dann mittels PHP ersetzt werden.

                  Das ist auch keinesfalls die absolute Weisheit.

                  scnr ;-)

                  LG,
                  CK

                  1. Hallo und guten Morgen Christian,

                    Besser wäre es, passive HTML-Templates als "Skeleton" aufzubauen und dann die durch Daten bedingten Veränderungen mittels PHP und DOM-Mehoden dort einzusetzen oder bei reinen Datenwerten (ohne zusätzliches Markup) mit Platzhalteren zu arbeiten, die dann mittels PHP ersetzt werden.

                    Das ist auch keinesfalls die absolute Weisheit.

                    scnr ;-)

                    Ach, schade. Und ich dachte jetzt, ich könnte mich zum Webking krönen lassen ;-P

                    Aber, was schlägst Du denn vor?
                    Je mehr man darüber nachdenkt, desto komplizierter wird es schließlich:

                    • HTML
                    • CSS
                    • Javascript
                    • aktives Backend
                      -- allgemeiner Programmfluss
                      -- Datenhaltung
                      -- Authentifizierung
                    • ...

                    Das möchte man doch, soweit es geht, alles schön sauber auseinander halten. Der Martin hatte da ja schon auf Möglichkeiten bei HTML und Javascript hingewiesen
                    http://forum.selfhtml.org/self/2015/jun/27/ueber-mysql-voreinstellungen-in-checkbox-treffen/1644202#m1644202

                    Grüße
                    TS

                    1. Hallo TS,

                      Hallo und guten Morgen Christian,

                      Guten Morgen? Oh je ;-) da werde ich ja direkt neidisch, wenn für dich noch „guten Morgen“ zählt ;-)

                      Aber, was schlägst Du denn vor?

                      Ich bin ein Verfechter des MVC-Prinzips mit eingebettetem Code in den Views, also z.B. der Weg, den Symfony geht, um mal in der PHP-Welt zu bleiben.

                      • HTML

                      Hier sehe ich wenig Probleme in der Modularisierung, dank Require- und Extend-ähnlichen Mechanismen.

                      • CSS

                      CSS-Modularisierung ist IMHO durch die Präprozessoren deutlich einfacher geworden, Stichwort Sass und Less.

                      • Javascript

                      Ja, die Modularisierung von JS stellt mich auch immer wieder vor Herausforderungen. Aber das verspricht ja mit ES6 schöner zu werden.

                      LG,
                      CK

                    2. Tach!

                      Aber, was schlägst Du denn vor?

                      Ich kenne keinen Weg, der der alleingültige wäre. Je nach Situation kann auch mal ein Antipattern das Mittel der Wahl sein. Deshalb strebe ich gleich gar nicht an, den vermeintlichen Königsweg zu finden. Stattdessen schau ich mir die Dinge und Muster an und entscheide, wie es mir jeweils am passendsten erscheint. Und wenn sich das später doch als ungünstig erweist, wird es umgebaut.

                      dedlfix.

              2. @@dedlfix

                Es ist sein Code, seine Entscheidung und sein Problem mit der späteren Wartbarkeit.

                Nein. Dadurch dass Jnnbo mit dem Zeug immer wieder hier im Forum aufschlägt, macht sie/er das zu unser allem Problem.

                LLAP 🖖

                --
                Ist diese Antwort anstößig? Dann könnte sie nützlich sein.
                1. Tach!

                  Es ist sein Code, seine Entscheidung und sein Problem mit der späteren Wartbarkeit.

                  Nein. Dadurch dass Jnnbo mit dem Zeug immer wieder hier im Forum aufschlägt, macht sie/er das zu unser allem Problem.

                  Wer ist wir und warum sollte ich sämtliche Fragen als mein Problem ansehen?

                  dedlfix.

                2. Hallo Gunnar,

                  Nein. Dadurch dass Jnnbo mit dem Zeug immer wieder hier im Forum aufschlägt, macht sie/er das zu unser allem Problem.

                  stimmt nicht, ich komme nicht immer wieder mit dem gleichen Problem.

                  Meine Schreibweise hat nichts mit der Session zu tun oder wie ich meine Select Felder vorbelegen kann. Dir passt meine Schreibweise nicht ok, kann ich mit leben, leb du damit dass ich die {} nutze. Wenn es dir nicht passt, antworte einfach nicht auf meine Beiträge und gut ist. Ich weiß gar nicht warum du jedes mal wieder versuchst Stress anzufangen? Lass mich so schreiben wie ich möchte, ich werde es wegen dir auch nicht umstellen.

                  Den Überblick habe ich nicht wegen der Schreibweise verloren, sondern wegen dem Code, weil man auf 1000000 Sachen achten muss und zwischen durch rufen hier auch noch Kunden an, dann muss ich alles wieder liegen lassen.

                  Nur für die Zukunft, auf solche Bemerkungen gehe ich ab sofort gar nicht weiter drauf ein, das ist jetzt nicht nur auf deine Bemerkungen bezogen sondern auf alle. Alle die hier meckern, ihr habt alle mal angefangen und habt euren eigenen Stiel wie ihr etwas macht, also lasst mich so machen wie es mir gefällt.

                  Nachtrag: Hast du nicht erst vor ein paar Tagen zu mir gesagt du würdest dich nicht in PHP und oder MySQL einmischen? Komisch hier machst du es und willst schon wieder DEIN Stiel anderen aufs Auge drücken, sehr merkwürdig.

                  1. Hallo und guten Morgen,

                    stimmt nicht, ich komme nicht immer wieder mit dem gleichen Problem.

                    Aber die fehlenden Grundlagen sind immer die Gleichen.

                    Meine Schreibweise hat nichts mit der Session zu tun oder wie ich meine Select Felder vorbelegen kann. Dir passt meine Schreibweise nicht ok, kann ich mit leben, leb du damit dass ich die {} nutze. Wenn es dir nicht passt, antworte einfach nicht auf meine Beiträge und gut ist. Ich weiß gar nicht warum du jedes mal wieder versuchst Stress anzufangen? Lass mich so schreiben wie ich möchte, ich werde es wegen dir auch nicht umstellen.

                    Gunnar vergisst manchmal, die Scheuklappen abzusetzen :-P

                    Den Überblick habe ich nicht wegen der Schreibweise verloren, sondern wegen dem Code, weil man auf 1000000 Sachen achten muss und zwischen durch rufen hier auch noch Kunden an, dann muss ich alles wieder liegen lassen.

                    Geschäftsleben könnte so schön sein, wenn nur die lästigen Kunden nicht wären :-P

                    Nur für die Zukunft, auf solche Bemerkungen gehe ich ab sofort gar nicht weiter drauf ein,

                    Das schaffst Du doch nicht! Wetten? Irgendeine Reaktion von Dir wird schon kommen ...

                    Nachtrag: Hast du nicht erst vor ein paar Tagen zu mir gesagt du würdest dich nicht in PHP und oder MySQL einmischen? Komisch hier machst du es und willst schon wieder DEIN Stiel anderen aufs Auge drücken, sehr merkwürdig.

                    Gunnar drückt seinen Stiel bestimmt nicht auf dein Auge [zensiert]

                    So, nun lach mal mit. Das macht mehr Spaß, als sich zu grämen :-)

                    Grüße
                    TS

                    1. Moin,

                      Gunnar drückt seinen Stiel bestimmt nicht auf dein Auge [zensiert]

                      wie jetzt, zensiert? ;-)

                      Aber an der Stelle in Jnnbos Text musste ich auch kurz lachen.
                      Für einen Moment habe ich überlegt: Besenstiel? Eis am Stiel?

                      Sehr schön fand ich auch, was ich vor Jahren mal in der Haushaltswarenabteilung des örtlichen Supermarkts gesehen habe: Da wurde laut Angebotstafel ein "Wischer mit Teleskobstil" angepriesen. Zwei Fehler in einem Wort, nicht schlecht. Aber manchmal ist es doch sinnvoller, man lässt jemanden die Schilder schreiben, der auch schreiben kann.

                      So long,
                       Martin

                3. Hallo Gunnar,

                  Es ist sein Code, seine Entscheidung und sein Problem mit der späteren Wartbarkeit.

                  Nein. Dadurch dass Jnnbo mit dem Zeug immer wieder hier im Forum aufschlägt, macht sie/er das zu unser allem Problem.

                  Bisher hatte ich nicht den Zwang verspürt, auf eine Frage zu antworten. Geht dir das anders?

                  LG,
                  CK

                  1. @@Christian Kruse

                    Es ist sein Code, seine Entscheidung und sein Problem mit der späteren Wartbarkeit.

                    Nein. Dadurch dass Jnnbo mit dem Zeug immer wieder hier im Forum aufschlägt, macht sie/er das zu unser allem Problem.

                    Bisher hatte ich nicht den Zwang verspürt, auf eine Frage zu antworten. Geht dir das anders?

                    Wer ist Jnnbo? ;-)

                    LLAP 🖖

                    --
                    Ist diese Antwort anstößig? Dann könnte sie nützlich sein.
  3. @@Jnnbo

    ist es möglich durch einen Klick auf ein X (Grafik, die hinter einem Wort steht) komplett zu löschen und die Seite neu laden zu lassen oder muss ich das mit einem <button> machen?

    Léonie Watson zeigt in ARIA, accessibility APIs & coding like you give a damn!, wie aufwändig es wäre, aus einem beliebigen Element einen (nicht nur mit der Maus clickbaren) Button zu machen. TL;DR: Es ist unsinnig, verwende das button-Element.

    Heydon Pickering zeigt in Reinventing The Hyperlink dasselbe für Links. TL;DR: Es ist unsinnig, verwende das a-Element.

    LLAP 🖖

    --
    Ist diese Antwort anstößig? Dann könnte sie nützlich sein.
  4. Hallo und guten Morgen,

    ist es möglich durch einen Klick auf ein X (Grafik, die hinter einem Wort steht) komplett zu löschen und die Seite neu laden zu lassen oder muss ich das mit einem <button> machen?

    Alternativ-Text

    Die Frage ist doch vermutlich wieder unvollständig?

    Ich vermute, dass hier eine Meldung angezeigt wird, die nach Anzeige wieder weggeklickt werden soll. Da "die Seite" anschließend neu geladen werden soll, muss die Meldung also Bestandteil des Dokumentes sein.

    Das deutet überhaupt nicht auf das Beenden einer Session hin, sondern lediglich auf das Rücksetzen von in ihr ggf. vorhandener Daten. Und das kann man selbstverständlich, entsprechende Berechtigung vorausgesetzt, mit jedem geeignet parametrisierten Request auf die Ressource durchführen lassen.

    In der klassischen Programmierung nannte man so etwas Formularverwaltung. Man hat darin festgelegt, welches Formular auf welches folgen durfte bei welchen Randbedingungen und wie man es wieder beseitigte vom Bildschirm. In der Web-Programmierung funktioniert das nicht viel anders, außer dass hier jedes Formular (versehentlich) auch mehrfach auf dem Bildschirm stehen kann und man daher im Backend entscheiden muss, was dann mit dem Auftrag geschehen muss.

    Du benötigst also schlichtweg erst einmal einen soliden Plan. Den baut man sich auch in der heutigen Zeit noch am einfachsten mit farbigen Dateikärtchen.

    Grüße
    TS

    1. Hallo TS,

      Ich vermute, dass hier eine Meldung angezeigt wird, die nach Anzeige wieder weggeklickt werden soll. Da "die Seite" anschließend neu geladen werden soll, muss die Meldung also Bestandteil des Dokumentes sein.

      nein, wie ich richtig geschrieben habe, soll durch einen Klick die komplette Session bzw. es sind insgesamt drei Sessions gelöscht werden sodass ich KEINE Einträge mehr auf der Seite habe.

      Das dient dazu um meine Suche komplett wieder auf 0 zu setzten. In einer Community habe ich dieses gesehen und es hat mir sehr gut gefallen, die haben es ebenfalls mit einer Session gelöst

      Alternativ-Text

      1. Moin!

        Alternativ-Text

        Sieht aber doch nach Buttons aus. z.B. Um es mal primitiv zu zeigen:

        <button id="deleteSexus">Frauen<img src="close.gif" alt="x" title="Diese Sucheinstellung entfernen">
        </button>
        <button id="deleteAge">Von 18 bis 25 Jahre<img src="close.gif" alt="x" title="Diese Sucheinstellung entfernen"></button>
        

        Das Löschen aller Sucheinstellungen aus der Session besorgt dann der Papierkorb. Im Gegensatz zu mir scheinst Du ja dort angemeldet zu sein. Was hindert Dich also daran, da mal in den Quelltext zu sehen?

        Jörg Reinholz