• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

[FRAGE] Warum formt PHP keinen Link?

Hamster_Max

New member
Ich habe einen Shortlink-Generator und möchte nun, wenn der User einen Link kürzt, dass dieser gleich beim ausgeben anklickbar ist, also gleich zu einem Link wird. Ich habe schon allerhand probiert, jedoch form PHP diesen Link nicht. Am Ende sieht man auf der Seite immer die HTML Attribute (<a href=""... usw.)

PHP:
<?php

if (isset($_SERVER['HTTP_X_REWRITE_URL'])) {$_SERVER['REQUEST_URI'] = $_SERVER['HTTP_X_REWRITE_URL'];}


if (strtoupper($_SERVER['HTTPS']) != "ON")
{
    $bSSL = FALSE;
    if (!headers_sent())
    {

        header("Status: 301 Moved Permanently");
        header(sprintf(
            'Location: https://%s%s',
            $_SERVER['HTTP_HOST'],
            $_SERVER['REQUEST_URI']
        ));
        exit();
    }
} else
{
    $bSSL = TRUE;

}
?>
<?
error_reporting(0);
if (!file_exists('config.php')) {
    header('Location: install');
	exit;
}
include('config.php');
	function copyright() {$copy = 'IC0gUG93ZXJlZCBieSA8YSBocmVmPSJodHRwOi8vbW4tc2hvcC5uZXQiIHRhcmdldD0iX2JsYW5rIj5NTi1TaG9wLm5ldDwvYT4=';return base64_decode($copy);}
	if(!function_exists('copyright')){echo base64_decode('UGxlYXNlIGRvblwndCByZW1vdmUgY29weXJpZ2h0IQ=='); exit;}
	
	if(isset($_POST['shorten']) && $_POST['shorten'] == "true" && isset($_POST['url'])){
		$url = strip_tags($_POST['url']);
				
		if(filter_var($url, FILTER_VALIDATE_URL) !== false){
			$query = mysql_query("SELECT * FROM urls WHERE url='".$url."'");
			
			if(mysql_num_rows($query) > 0){
				$fetch_short = mysql_fetch_array($query);
				echo $domain."/".$fetch_short['short']; //HIER DIE STELLE WO DER GEKÜRZTE LINK AUSGEGEBEN WIRD	
				//echo '<a href="'.$domain."/".$fetch_short['short'].'" target="_blank">'.$domain."/".$fetch_short['short'].'</a>';  HIER WAS ICH AUCH SCHON DURCH HATTE
			}else{
				
				$length = 5;
				$characters = '0123456789abcdefghijklmnopqrstuvwxyz';
				$short = "";    
				for ($p = 0; $p < $length; $p++) {
					$short .= $characters[mt_rand(0, strlen($characters))];
				}
				
				$short_query = mysql_query("SELECT short FROM urls WHERE short='".$short."'");
				
				while(mysql_num_rows($short_query) > 0){

					$length = 5;
					$characters = '0123456789abcdefghijklmnopqrstuvwxyz';
					$short = "";    
					for ($p = 0; $p < $length; $p++) {
						$short .= $characters[mt_rand(0, strlen($characters))];
					}

					$short_query = mysql_query("SELECT short FROM urls WHERE short='".$short."'");
					if(mysql_num_rows($short_query) == 0){
						break;
					}
				}
				
				mysql_query("INSERT INTO urls VALUES('','".$url."','".$short."','0')");
				echo $domain."/".$short;
			}
			
		}else{
			echo "Bitte gebe eine korrekte URL ein!";	
		}
	}else{
?>

Nachdem mir immer angehangen wurde, dass ich meine Probleme nicht genau genug beschreibe, hoffe ich dass das nun soweit klar ist. Ansonsten versuche ich gern Fragen zu beantworten, kenne mich aber auch nicht so aus.

- - - Aktualisiert - - -

Ich habe die entsprechende Stelle natürlich kommentiert. (hier Orange oder so)
 
Müsste es eigentlich, kann man das in diesem PHP Info Panel auch sehen?

HTML sieht so aus:

entfernt

Eigentlich alles ganz normal.

- - - Aktualisiert - - -

Okay, ich habe mal nachgeschaut. Wenn es das hier ist, dann ist das aus. Ich kann meinen Hoster fragen, ob er das anstellt, wenn es notwendig ist?

2016-05-25_20h22_25.png
 
Zuletzt bearbeitet:
Der Fehler ist gefunden, der Support meines Hosters ist genial! Es lag an einem dämlichen JavaScript... funktioniert nun. Danke trotzdem für's Helfen :)
 
Zurück
Oben