1. Artikel
  2. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  3. Forum
  • Anmelden
  • Registrieren
  • Suche
Dieses Thema
  • Alles
  • Dieses Thema
  • Dieses Forum
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
  1. Paules-PC-Forum.de
  2. Forum
  3. Programmierung
  4. PHP/MySQL

Link eintragen

  • Michi
  • 18. Dezember 2004 um 16:51
  • Michi
    Premium-Mitglied
    Reaktionen
    673
    Beiträge
    15.461
    • 18. Dezember 2004 um 16:51
    • #1

    Hallo,

    ich habe da ein PHP Script, das habe ich nun etwas umgebaut und möchte, das ich dort Links eintragen kann.

    Leider weiß ich nicht, wie der Code dafür aussieht.

    Schön wäre es natürlich, wenn es als Link eingetragen wird, egal was der User im Eingabeformular eingibt, also mit http:// oder ohne.

    So sieht die Ausgabe aus, der Link wird zweimal hintereinander dargestellt
    https://www.paules-pc-forum.de/paules-pc-forum.de

    Code
    $eintrag .= "[b]Name der Seite:[/b] $name 
    \r\n";
    
    
    $eintrag .= "[b]Web Adresse:[/b]<a href=\"$richtung\" target=\"_blank\">$richtung</a>

    Das wäre z.Z. die Eingabe:

    Code
    <form action="engine2.php" method="POST">
      <div class="contentform">
       <label for="name">Name der Seite: </label>
      <input id="name" type="text" size="50" name="k_nr" value="Namen eingeben"
       onblur="if(this.value=='')this.value='Namen eingeben';"
       onfocus="if(this.value=='Namen eingeben')this.value='';">
    
    
    
    
        <div class="contentform">
         <label for="b_nr">http://www.</label>
          <input id="b_nr" type="text" size="50" name="b_nr"  value="bitte erg&auml;nzen"
          onblur="if(this.value=='')this.value='bitte erg&auml;nzen';"
          onfocus="if(this.value=='bitte erg&auml;nzen')this.value='';">
    Alles anzeigen


    So sieht das jetzt aus:

    Zitat


    paules-pc-forum
    https://www.paules-pc-forum.de/paules-pc-forum.de/

    Ich möchte eigentlich nur den Namen der Seite und in der nächsten Zeile den Link zur Seite haben.
    Beispiel:

    Zitat

    paules-pc-forum
    https://www.paules-pc-forum.de

    Vielleicht kann mir auch jemand gleich einen komplett neuen Script basteln. :wink::D

    Wer kann helfen?

    Mit freundlichen Grüßen
    Michi

  • Eckard41
    Stammuser
    Beiträge
    471
    • 18. Dezember 2004 um 18:17
    • #2

    Poste mal bitte noch den Abschnitt vor

    Code
    $eintrag .= "[b]Name der Seite:[/b] $name 
    \r\n";
    
    
    $eintrag .= "[b]Web Adresse:[/b]<a href=\"$richtung\" target=\"_blank\">$richtung</a>

    Am besten ab der Übernahme der Variablen aus dem Formular ($_POST bzw $HTTP_POSTS_VARS) bis zur Ausgabe der Links, also der Variable $eintrag.

  • Michi
    Premium-Mitglied
    Reaktionen
    673
    Beiträge
    15.461
    • 18. Dezember 2004 um 18:51
    • #3

    Wie gesagt, habe den Script etwas abgeändert, daher sind dort Abschnitte drin, die eigentlich überflüssig sind.

    Es besteht aus drei Dateien,
    engine2.php (Verarbeitung)
    form2.html (Eingabe)
    todo2.html (Ausgabe)

    PHP
    <?php
    $name = $_POST['k_nr'];
    $mail = $_POST['a_nr'];
    $id = $_POST['c_nr'];
    $richtung = $_POST['b_nr'];
    $ja_nein = $_POST['ja_nein'];
    $datum = $_POST['date'];
    $content = nl2br($_POST['content']);
    //Aktuelle Zeit
    $zeit = date("H:i:s");
    //Aktuelles Datum
    $datum = date("d.m.y");
    
    
    // Pflichtfelder auf Vorhandensein prüfen
    $fehler = false;
    // Namen prüfen 'Bitte Namen eingeben' = Value Wert im Javascript
    	if ($name == "Bitte Namen eingeben") {
    		$fehler .= "Dein Name fehlt
    ";
    	}
    // wenn Kontakt erwünscht Email prüfen
    	if ($ja_nein == "ja") {
    
    
    		if (($mail == "Bitte Emailadresse eingeben") or ( ! preg_match( "/^[_\.0-9a-z-]+@([0-9a-z][0-9a-z-]+\.)+[a-z]{2,3}$/i", $mail ))) {
    			$fehler .= "Deine Emailadresse fehlt oder ist ung&uuml;ltig.
    ";
    		}
    
    
    	}
    // Inhalt des Kommentar prüfen siehe Valuewert
    	if ($content == "Bitte Kommentar eintragen") {
    		$fehler .="Bitte einen Kommentar eintragen";
    	}
    
    
    // Alle Einträge richtig? Dann ab dafür!
    if ($fehler == false) {
    
    
    	if ($mail == "Bitte Emailadresse eingeben") {
    		$mail = "n.a.";
    	}
    
    
    	if ($richtung == "Titel") {
    		$richtung = "n.a.";
    	}
    
    
    
    
    
    
    //Einlesen sämtlicher Daten des Vorhergehenden Formulars
    
    
    $eintrag .= "[b]Name der Seite:[/b] $name 
    \r\n";
    
    
    $eintrag .= "[b]Web Adresse:[/b]<a href=\"$richtung\" target=\"_blank\">$richtung</a>
    
    
    
    
    \r\n<hr width=90% size=2 color=#003366 algin=left noshade=noshade>\r\n";
    
    
    //restliche Einträge hinzufügen
    $fp=fopen("./templates/default/todo2.html","a");
    fwrite($fp,"$eintrag\r\n");
    fclose($fp);
    mail("empfehlung@web-upload.de", "Neuer Eintrag", "Hallo,\n\nein neuer Eintrag in der Kontaktbox!\n\n\nhttp://www.web-upload.de/index.php?template=form2", "From: Kontaktbox <email@web-upload.de>\r\n");
    
    
    //öffnen, schreiben und schließen der Zieldatei
    
    
    // Weiterleitung zu todo.html
    $redirect = "<meta http-equiv=\"refresh\" content=\"1; URL=http://www.web-upload.de/index.php?template=form2\">"; // sollen die Besucher das wirklich einsehen?
    
    
    	echo "<!DOCTYPE html PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">\n\n"
    		."<html>\n"
    		."<head>\n"
    		."<title>Formular Eintrag</title>\n"
    		."<meta http-equiv=\"content-type\" content=\"text/html;charset=iso-8859-1\">\n";
    
    
    	if (isset($redirect)) {
    		echo $redirect;
    	}
    
    
    	echo "</head>\n"
    		."<body>\n";
    
    
    // Dankeschön
    	echo  " Vielen Dank für den Kommentar zu meiner Website!
    \n";
    		if ($ja_nein == "ja") {
    		 echo "Ich werde mich unverzüglich bei dir melden
    ";
    		}
    }
    
    
    // Alle Einträge richtig? Meckermeldung
    	else{
    		echo  "[b]FEHLER![/b]
    \n"
    		     .$fehler
    		     ."
    
    
    Bitte überpr&uuml;fe nochmals deine Eingaben";
    
    
    	}
    
    
    
    
    	echo "</body>\n"
    		."</html>";
    
    
    ?>
    Alles anzeigen

    Mit freundlichen Grüßen
    Michi

  • Eckard41
    Stammuser
    Beiträge
    471
    • 18. Dezember 2004 um 20:07
    • #4
    Zitat

    Ich möchte eigentlich nur den Namen der Seite und in der nächsten Zeile den Link zur Seite haben.
    Beispiel:

    Wenn du wirklich genau dieses Script verwendest, müsste das eigentlich auch so funktionieren.

    Zitat

    Schön wäre es natürlich, wenn es als Link eingetragen wird, egal was der User im Eingabeformular eingibt, also mit http:// oder ohne.


    Vor

    Code
    $eintrag .= "[b]Name der Seite:[/b] $name 
    \r\n";
    
    
    $eintrag .= "[b]Web Adresse:[/b]<a href=\"$richtung\" target=\"_blank\">$richtung</a>


    könntest du

    Code
    if (substr($richtung, 0, 7) != "http://") {
       $richtung = "http://" . $richtung;
    }


    einfügen.

  • Michi
    Premium-Mitglied
    Reaktionen
    673
    Beiträge
    15.461
    • 19. Dezember 2004 um 03:07
    • #5

    Wir kommen der Sache schon näher! :D

    Aber ...

    Der Link wird zwar richtig dargestellt, wenn man ihn aber verwendet, sieht der Link so aus
    https://www.paules-pc-forum.de/paules-pc-forum.de

    und dann funktioniert er natürlich nicht.

    Wie bekomm ich es hin, das der Link als Link angezeigt wird und gleichzeitig die Funktion auch stimmt?

    Nachtrag
    Habe eine Lösung gefunden:

    Code
    $eintrag .= "[b]Link:[/b]<a href=\"$richtung\" target=\"_blank\"> Klick</a>


    Das hat auch den Vorteil, das der Link etwas länger sein kann.

    Vielen Dank für die Hilfe!

    Mit freundlichen Grüßen
    Michi

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!

Benutzerkonto erstellen Anmelden

Windows 11

  1. Datenschutzerklärung
  2. Impressum
Community-Software: WoltLab Suite™