dedlfix: Unübersichtlich und „aufgeblähter" Code?

Beitrag lesen

Tach!

jemand meinte heute zu mir ich würde unübersichtlichen und „aufgeblähter" Code schreiben,

Mir fehlt da noch eine ganze Menge Fehlerbehandlung.

wollte mir aber nicht sagen warm und wie bzw. was ich ändern könnte.

Vielleicht ist gemeint, dass du eine Menge Code geschrieben hast, der alles erledigt, und ihn nicht in kleinere, übersichtliche Teile zerlegt hat.

	// Prüfen ob GET gesetztz ist
	if(isset($_GET['hersteller'])) {
			$hersteller = $_GET['hersteller'];	
	}

Wenn hersteller nicht in $_GET ist, was ist dann? Beispielsweise mit der Variable $hersteller, und auch bezüglich des Programmflusses?

	// Datensatz aus der Datenbank auslesen
	$stmt = $mysqli->prepare("SELECT h_id, h_titel, h_titelURL, h_status FROM web_hersteller WHERE h_id=?");
	$stmt->bind_param("s", $hersteller);
        $stmt->execute();
	$stmt->bind_result($h_id, $h_titel, $h_titelURL, $h_status);
	$stmt->fetch();
        $stmt->close();

Keine Fehlerbehandung. Heute scheint die Sonne, wird schon alles gut gehen.

	// Ziel URL festlegen
	$host = htmlspecialchars($_SERVER["HTTP_HOST"]);
	$uri  = rtrim(dirname(htmlspecialchars($_SERVER["PHP_SELF"])), "/\\");

Was macht denn htmlspecialchars() hier? Das ist doch kein HTML-Kontext.

	if(isset($_POST['abschicken'])){

		if(empty($_POST['hersteller'])) {
				$errors[] = "Geben Sie bitte einen Hersteller an";
			}

		if(empty($_POST['url'])) {
				$errors[] = "Geben Sie bitte eine Hersteller URL an";
			}
		
	if(isset($_POST['abschicken']) && empty($errors)) {
		
		
	if(isset($_GET['hersteller'])) {

Schon wieder Validierung? Warum kommt das nicht bevor die Verarbeitung anfängt?

$stmt->execute();

Immer noch keine Fehlerbehandlung.

				header("Location: http://$host$uri/$extra");

Jetzt sind hier HTML-gerechte Zeichen-Ersetzungen drin, die in HTTP gar keine Funktion haben. Es fehlt aber eine URL-gerechte Behandlung.

				else {
						echo $mysqli -> error;
					}

Wozu gehört der Teil denn? Ist die Formatierung des Codes bei dir so wie es hier im Forum zu sehen ist, oder ist das nur ein wie auch immer gelagertes Copy-Paste-Formatier-Problem?

dedlfix.

0 69

Unübersichtlich und „aufgeblähter" Code?

Jnnbo
  • php
  1. 0
    frankx
  2. 0
    dedlfix
    1. 0
      Auge
      • meinung
      • php
      1. 0
        dedlfix
  3. 0
    Jörg Reinholz
    1. 0
      frankx
    2. 0
      Jörg Reinholz
      • programmiertechnik
      1. 0
        Jnnbo
        1. 0
          Jörg Reinholz
          1. 0
            Gunnar Bittersmann
            1. 0
              dedlfix
            2. 0
              Jörg Reinholz
      2. 0
        frankx
        1. 0
          Jörg Reinholz
        2. 0
          Auge
          1. 0
            Gunnar Bittersmann
      3. 1
        dedlfix
      4. 0
        Gunnar Bittersmann
        1. 2
          Christian Kruse
    3. 1
      Auge
      • meinung
      • php
    4. 0
      Gunnar Bittersmann
      1. 0
        Jörg Reinholz
        1. 0

          Curly Braces und Coding Style

          frankx
          1. 1
            Der Martin
            1. 1
              Sven Rautenberg
              1. 0
                Tabellenkalk
                1. 0

                  Curly Braces und Coding Style - Leerzeichen oder neue Zeile?

                  frankx
                  1. 0
                    Tabellenkalk
                    • php
                    • programmiertechnik
                    1. 0
                      frankx
                      1. 0

                        Curly Braces und Coding Style - PHP Coding Standards Fixer

                        frankx
                    2. 1
                      Sven Rautenberg
                      1. 0
                        dedlfix
                        1. 0
                          Sven Rautenberg
                          1. 0
                            dedlfix
  4. 0
    Auge
    1. 0
      Jnnbo
      1. 1
        Christian Kruse
        1. 0
          Jnnbo
          1. 1
            Christian Kruse
        2. 0
          Gunnar Bittersmann
          • programmiertechnik
          1. 0
            Christian Kruse
      2. 0
        Jörg Reinholz
        1. 0
          Jnnbo
          1. 0
            Jörg Reinholz
            1. 0
              Jnnbo
              1. 0
                Sven Rautenberg
                1. 0
                  BaBa
                  1. 0
                    Gunnar Bittersmann
                    1. 2
                      Christian Kruse
                    2. 0
                      Sven Rautenberg
                      1. 0
                        dedlfix
                        1. 0
                          Gunnar Bittersmann
                          1. 0
                            dedlfix
                        2. 0
                          Gunnar Bittersmann
                          1. 0
                            dedlfix
                          2. 0
                            Gunnar Bittersmann
                            • menschelei
                            1. 1
                              Der Martin
                              1. 0
                                Gunnar Bittersmann
    2. 0
      frankx
  5. 0
    frankx
    1. 0
      Jnnbo
      1. 0
        dedlfix
      2. 0
        frankx
  6. 0
    MudGuard
    1. 0
      Jnnbo
      1. 0
        MudGuard
    2. 0
      dedlfix
      1. 0
        frankx