ilch Forum » Allgemein » HTML, PHP, SQL,... » defekten Link melden

Geschlossen
  1. #1
    User Pic
    CeeJay Hall Of Fame
    Registriert seit
    23.03.2007
    Beiträge
    2.425
    Beitragswertungen
    18 Beitragspunkte
    Hi!

    Ist es mögich, in die Downloads einen kleinen Link zu setzen, in dem "Defekten Link melden" steht? Also es sollte schon etwas sein, was mir dann acuh wirklich einen defekten Link meldet lächeln

    Habt ihr da ne Idee?
    Nichts ist so sicher, wie die Änderung.
    0 Mitglieder finden den Beitrag gut.
  2. #2
    User Pic
    rubberduck2006 Mitglied
    Registriert seit
    09.10.2007
    Beiträge
    459
    Beitragswertungen
    0 Beitragspunkte
    meinste so wie bei mir:

    zombie.noreal.ath.cx/index.php?downloads-show-154


    wenn ja dann hier der code:

    <script language="JavaScript" type="text/javascript">
    <!--
    function doVote(n1,did) {
      document.location.href="index.php?downloads-show-" + did + "-z"+n1;
    }
    //-->
    </script>
    
    <table width="100%" class="border" border="0" cellspacing="1" cellpadding="3">
      <tr class="Chead">
    		<th colspan="4" align="center"><b>{name} {version}</b></th>
    	</tr><tr>
    	  <td class="Cmite">{_lang_name} (Version)</td>
    		<td class="Cnorm">{name} {version_kl}</td>
        <td class="Cmite" colspan="2" valign="top">{_lang_voting} {vote_wertung}
      </tr><tr>
    	  <td class="Cmite">{_lang_author}</td>
    		<td class="Cnorm">{creater}</td>
        <td class="Cnorm" rowspan="2" colspan="2" align="center">
        <table class="border" border="0" cellspacing="1" cellpadding="0">
          <tr>
            <td class="Cdark" onClick="doVote(1,{id})" style="cursor:pointer">&nbsp;1&nbsp;</td>
            <td class="Cmite" onClick="doVote(2,{id})" style="cursor:pointer">&nbsp;2&nbsp;</td>
            <td class="Cdark" onClick="doVote(3,{id})" style="cursor:pointer">&nbsp;3&nbsp;</td>
            <td class="Cmite" onClick="doVote(4,{id})" style="cursor:pointer">&nbsp;4&nbsp;</td>
            <td class="Cdark" onClick="doVote(5,{id})" style="cursor:pointer">&nbsp;5&nbsp;</td>
            <td class="Cmite" onClick="doVote(6,{id})" style="cursor:pointer">&nbsp;6&nbsp;</td>
            <td class="Cdark" onClick="doVote(7,{id})" style="cursor:pointer">&nbsp;7&nbsp;</td>
            <td class="Cmite" onClick="doVote(8,{id})" style="cursor:pointer">&nbsp;8&nbsp;</td>
            <td class="Cdark" onClick="doVote(9,{id})" style="cursor:pointer">&nbsp;9&nbsp;</td>
            <td class="Cmite" onClick="doVote(10,{id})" style="cursor:pointer">&nbsp;10&nbsp;</td>
          </tr>
        </table>
        </td>
    	</tr><tr>
    	  <td class="Cmite">{_lang_date}</td>
    		<td class="Cnorm">{datum}</td>
      </tr><tr>
    	  <td class="Cmite" width="110">{_lang_size}</td>
    		<td class="Cnorm">{size}</td>
        <td class="Cmite" width="110">{_lang_voter}</td>
    		<td class="Cnorm">{vote_klicks}</td>
    	</tr><tr>
    	  <td class="Cmite">{_lang_downloads}</td>
    		<td class="Cnorm">{downs}</td>
    	  <td class="Cmite">{_lang_seenfrom}</td>
    		<td class="Cnorm">{hits}</td>
    	</tr>
    </table>
    <p></p>
    <b><center>{downlink}&nbsp;&nbsp;&nbsp;{surl}&nbsp;&nbsp;&nbsp;<a href="http://zombie.noreal.ath.cx/index.php?contact" target="_top"><img src="http://zombie.noreal.ath.cx/include/images/buttons/defekter_link.gif" width="91" height="26" border="0" /></a>
    </center></b>
    <p></p>
    <table width="100%" class="border" border="0" cellspacing="1" cellpadding="3">
      <tr>
    	  <th class="Cdark">{_lang_desc}</th>
      </tr>
    		<td class="Cnorm">{ssurl}{descl}</td>
    	</tr>
    </table>


    Einfach den kompletten code kopieren und mit den aus deiner downloads_show.htm ersezten

    0 Mitglieder finden den Beitrag gut.
  3. #3
    User Pic
    Balthazar3k Mitglied
    Registriert seit
    23.04.2006
    Beiträge
    422
    Beitragswertungen
    7 Beitragspunkte
    Das ist ja nur ein Link zum Formular oO


    Zuletzt modifiziert von Balthazar3k am 16.07.2008 - 00:51:52
    Kein Support für den Raidplaner über PM.
    0 Mitglieder finden den Beitrag gut.
  4. #4
    User Pic
    ASHP Mitglied
    Registriert seit
    07.03.2008
    Beiträge
    267
    Beitragswertungen
    1 Beitragspunkte
    Kannst aber auswählen an wen du schreiben willst. Steht ja extra Download Manager, an den werden wenn denk ich mal die Probleme/Defekten Links geschickt und er wird sich drum kümmern.

    Ansonsten kannst du dir ja iwie ne Selfpage oder ne andere Weiterlung dafür basteln und die Verlinkung im Code einfach tauschen.
    0 Mitglieder finden den Beitrag gut.
  5. #5
    User Pic
    Balthazar3k Mitglied
    Registriert seit
    23.04.2006
    Beiträge
    422
    Beitragswertungen
    7 Beitragspunkte
    Na jeder wie er will habe da auch eins gemacht keine so dumme idee mit dem defeckten link

    downloads.php
    <?php 
    #   Copyright by: Manuel
    #   Support: www.ilch.de
    
    
    defined ('main') or die ( 'no direct access' );
    
    
    function get_cats_title ( $catsar ) {
      $l = '';
    	foreach($catsar as $k => $v) {
    	  if ( $k != '' AND $v != '' ) {
    		  $l = $v.' :: '.$l;
    		}
    	}
    	return ($l);
    }
    
    function get_cats_urls ( $catsar ) {
      $l = '';
    	foreach($catsar as $k => $v) {
    	  if ( $k != '' AND $v != '' ) {
    		  $l = '<a class="smalfont" href="?downloads-'.$k.'">'.$v.'</a><b> &raquo; </b>'.$l;
    		}
    	}
    	return ($l);
    }
    
    function get_cats_array ( $cid , $ar ) {
    	if ( empty($cid) ) {
    	  return ($ar);
    	} else { 
    	  $erg = db_query("SELECT cat,id,name FROM prefix_downcats WHERE id = ".$cid);
    		$row = db_fetch_assoc($erg);
    		$ar[$row['id']] = $row['name'];
    	  return ( get_cats_array($row['cat'],$ar) );
    	}
    	if ( $r ) {
    	  return ($l);
    	}
    }
    
    function get_download_size($file) {
      $sizes = array(" Bytes", " KB", " MB", " GB", " TB", " PB", " EB", " ZB", " YB");  
      $size = @filesize($file); if ($size == 0) { return('n/a'); } else {
      return (round($size/pow(1024, ($i = floor(log($size, 1024)))), 2) . $sizes[$i]); }
    }
    
    function count_files ($cid) {
      $zges = 0;
    	$e = db_query("SELECT id FROM prefix_downcats WHERE cat = ".$cid);
    	if ( db_num_rows($e) > 0 ) {
    	  while ($r = db_fetch_assoc($e) ) {
    	    $zges = $zges + count_files ( $r['id'] );
    	  }
    	}
    	$zges = $zges + db_count_query("SELECT COUNT(*) FROM prefix_downloads WHERE cat = ".$cid);
    	return ( $zges );
    }
    
    function icUpload () {
    	    
          $name = escape($_POST['name'],'string');
    	    $version = escape($_POST['version'],'string');
    	    $autor = escape($_POST['autor'],'string');
    	    $surl = escape($_POST['surl'],'string');
    	    $ssurl = escape($_POST['ssurl'],'string');
          $url = ( empty($_POST['url']) ? '' : escape($_POST['url'],'string') );
    	    $desc = escape($_POST['desc'],'string');
    	    $descl = escape($_POST['descl'],'textarea');
          
          if (empty($name)) {
            return ('keinen Namen angegeben.');
          }
    
          if (empty($desc) or empty($descl)) {
            return ('kein langer oder/und kein kurzer Text angegeben.');
          }
          
          if (empty($url) AND empty($_FILES['file']['name'])) {
            return ('Keine Datei oder Link angegeben.');
          }
      
    	    if (!empty ($_FILES['file']['name']) ) {
          
    		    $rtype = trim(ic_mime_type ($_FILES['file']['tmp_name']));
            $fname = escape($_FILES['file']['name'],'string');
            $fende = preg_replace("/.+\.([a-zA-Z]+)$/", "\\1", $fname);
            $fende = strtolower($fende);
            
    		    if ( $_FILES['file']['size'] > 2097000 ) { # 2 mb (2 097 152)
              return ('Die Datei darf NICHT gr&ouml;sser als 2 MBytes sein.');
            }
            
            if (
    		      ($fende != 'rar' AND $fende != 'zip' AND $fende != 'tar')
                       
              OR (
              $rtype != 'application/x-rar' AND
              $rtype != 'application/x-zip' AND
              $rtype != 'application/x-tar')
    
    		    ) {
              return ('Die Datei darf nur die Endungen: .zip, .tar oder .rar haben.');
            }
            
            $fname = str_replace ('.'.$fende, '', $fname);
            $fname = preg_replace("/[^a-zA-Z0-9]/", "", $fname);
            $fname = $fname.'.'.$fende;
            
            if (file_exists( 'include/downs/downloads/user_upload/'.$fname ) ) {
              return ('Die Datei existiert bereits und kann nicht &uuml;berschrieben werden.');
            }
            
            if ( move_uploaded_file($_FILES['file']['tmp_name'], 'include/downs/downloads/user_upload/'.$fname) ) {
              $url = 'include/downs/downloads/user_upload/'.$fname;
              @chmod($url, 0777);
    			  }
          }
            
          if (empty($url)) {
            return ('Keine Datei oder Link angegeben');
          }
            
          db_query("INSERT INTO prefix_downloads (`time`,`cat`,`creater`,`version`,`url`,surl,`ssurl`,`name`,`desc`,`descl`,pos) VALUES (NOW(),-1,'".$autor."','".$version."','".$url."','".$surl."','".$ssurl."','".$name."','".$desc."','".$descl."','0')");
            
          return (true);
    }
    
    switch ( $menu->get(1) ) {
      default :
    		$cid = ( $menu->get(1) ? escape($menu->get(1), 'integer') : 0 );
    		$erg = db_query("SELECT cat,name FROM prefix_downcats WHERE id = ".$cid." ORDER BY pos");
    		if ( db_num_rows($erg) > 0 ) {
    		  $row = db_fetch_assoc($erg);
    			$array = get_cats_array($row['cat'],'');
    			if ( !empty($array) ) {
    			  $titelzw = get_cats_title($array);
    			  $namezw = get_cats_urls($array);
    			} else {
    			  $titelzw = '';
    				$namezw = '';
    			}
    		  $cattitle = ':: '.$titelzw.$row['name'];
    			$catname = '<b> &raquo; </b>'.$namezw.$row['name'];	
    		} else {
    		  $cattitle = '';
    			$catname = '';
    		}
    		$title = $allgAr['title'].' :: Downloads '.$cattitle;
        $hmenu = '<a class="smalfont" href="?downloads">Downloads</a>'.$catname;
        $design = new design ( $title , $hmenu );
    	  $design->header();
    		$tpl = new tpl ('downloads' );
        $tpl->set('cid', $cid);
        $erg = db_query("SELECT id,name,`desc` FROM prefix_downcats WHERE cat = ".$cid." AND recht >= ".$_SESSION['authright']." ORDER BY pos");
        if ( db_num_rows($erg) > 0 ) {
    		  $tpl->out(1); $class = 'Cnorm';
    			while ($row = db_fetch_assoc($erg) ) {
    			  $row['files'] = count_files($row['id']);
    			  $class = ( $class == 'Cmite' ? 'Cnorm' : 'Cmite' );
    				$row['class'] = $class;
    			  $tpl->set_ar_out($row,2);
          }
    		  $tpl->out(3);
    		}
    		
        # sortierung festlegen
        $sortierung = 'pos ASC';
        $DOM = 'ASC';
        $POM = 'ASC';
        $DAM = 'ASC';
        
        switch ($menu->get(2)) {
          case 'positionDESC' : $sortierung = 'pos DESC'; break;
          case 'positionASC' : $sortierung = 'pos ASC';  $POM = 'DESC'; break;
          case 'downsDESC' : $sortierung = 'downs DESC'; break;
          case 'downsASC' : $sortierung = 'downs ASC'; $DOM = 'DESC'; break;
          case 'dateDESC' : $sortierung = 'time DESC'; break;
          case 'dateASC' : $sortierung = 'time ASC'; $DAM = 'DESC'; break;
        }
    
        $tpl->set ('POM', $POM);
        $tpl->set ('DOM', $DOM);
        $tpl->set ('DAM', $DAM);
        
    		$erg = db_query("select id,name,version,ssurl,`desc`,downs,DATE_FORMAT(time,'%d.%m.%Y') as datum from prefix_downloads WHERE cat = ".$cid." ORDER BY ".$sortierung);
    		if ( db_num_rows($erg) > 0 ) {
    		  $tpl->out(4); $class = 'Cnorm';
    			while($row = db_fetch_assoc($erg) ) {
            # smal screenshot url
    				$row['ssurl'] = ( (file_exists($row['ssurl']) AND $row['ssurl'] != '') ? '<img src="'.$row['ssurl'].'" alt="'.$row['name'].' '.$row['version'].'" title="'.$row['name'].' '.$row['version'].'" style="float:left; border: none; padding-right:3px;" />' : '' );
            $class = ( $class == 'Cmite' ? 'Cnorm' : 'Cmite' );
    				$row['class'] = $class;
    			  $tpl->set_ar_out($row,5);
    			}
    			$tpl->out(6);
    		}
        
        if ( $cid == 0 AND $allgAr['archiv_down_userupload'] == 1 AND loggedin() AND is_writeable ( 'include/downs/downloads/user_upload' ) ) {
          $tpl->out(7);
        }
        
    		$design->footer();
    	  break;
    	case 'show' :
    	  
        $fid = escape($menu->get(2), 'integer');
        $erg = db_query("SELECT prefix_downloads.cat,ssurl,surl,url,hits,vote_klicks,vote_wertung,prefix_downloads.name,version,creater,downs,descl,prefix_downloads.id,DATE_FORMAT(time,'%d.%m.%Y') as datum FROM prefix_downloads LEFT JOIN prefix_downcats ON prefix_downcats.id = prefix_downloads.cat WHERE prefix_downloads.id = ".$fid." AND (".$_SESSION['authright']." <= prefix_downcats.recht OR (prefix_downloads.cat = 0 AND prefix_downcats.recht IS NULL))");    
        if (@db_num_rows($erg) <> 1) {
          $title = $allgAr['title'].' :: Downloads ';
          $hmenu = '<a class="smalfont" href="?downloads">Downloads</a>';
          $design = new design ( $title , $hmenu );
          $design->header();
          echo 'Der Download wurde nicht gefunden';
          $design->footer(1);
        }   
        
    		$row = db_fetch_assoc($erg);
        
        # umfrage einen hoch zaehlen ...
        if ( $menu->getA(3) == 'z' AND is_numeric($menu->getE(3)) AND !isset ($_SESSION['downDoVote'][$row['id']]) AND loggedin() ) {
          $_SESSION['downDoVote'][$row['id']] = 'o';
          $row['vote_wertung'] = round ( ( ( $row['vote_wertung'] * $row['vote_klicks'] ) + $menu->getE(3) ) / ( $row['vote_klicks'] + 1 ) , 3 ); 
          $row['vote_klicks']++;
          db_query("UPDATE prefix_downloads SET vote_wertung = ".$row['vote_wertung'].", vote_klicks = ".$row['vote_klicks']." WHERE id = ".$row['id']);
        }
        if ( !isset ($_SESSION['downDoKlick'][$row['id']]) ) {
          $_SESSION['downDoKlick'][$row['id']] = 'o';
          db_query("UPDATE prefix_downloads SET hits = hits +1 WHERE id = ".$fid);
        }
        
    		$cid = $row['cat'];
    		$erg1 = db_query("SELECT id,cat,name FROM prefix_downcats WHERE id = ".$cid);
    		if ( db_num_rows($erg1) > 0 ) {
    		  $row1 = db_fetch_assoc($erg1);
    			$array = get_cats_array($row1['cat'],'');
    			if ( !empty($array) ) {
    			  $titelzw = get_cats_title($array);
    			  $namezw = get_cats_urls($array);
    			} else {
    			  $titelzw = '';
    				$namezw = '';
    			}
    		  $cattitle = ':: '.$titelzw.$row1['name'].' :: '.$row['name'].' '.$row['version'];
    			$catname = '<b> &raquo; </b>'.$namezw.'<a class="smalfont" href="?downloads-'.$row1['id'].'">'.$row1['name'].'</a><b> &raquo; </b>'.$row['name'].' '.$row['version'];	
    		} else {
    		  $cattitle = '';
    			$catname = '';
    		}
    		$tpl = new tpl ('downloads_show' );
    		$row['ssurl'] = ( $row['ssurl'] != '' ? bbcode('[c][img]'.$row['ssurl'].'[/img][/c]').'<br>' : '' );
        $row['surl']  = ( empty($row['surl']) ? '' : '&nbsp;&nbsp;&nbsp; <a href="'.$row['surl'].'" target="_blank">Demo/Screenshot</a>' );
    	$row['toter_link'] = " <a href='index.php?downloads-toterlink'>Defeckter Link</a>";
    		$row['size']  = get_download_size($row['url']);
    		$row['descl'] = bbcode($row['descl']);
    		$row['version_kl'] = (empty($row['version'])?'':'('.$row['version'].')');
        $title = $allgAr['title'].' :: Downloads '.$cattitle;
        $hmenu = '<a class="smalfont" href="?downloads">Downloads</a>'.$catname;
        $design = new design ( $title , $hmenu );
    	  $design->header();
    		$tpl->set_ar_out($row,0);
        $design->footer();
    	  break;
    	case 'down' :
        $fid = $menu->get(2);
        $recht = @db_result(db_query("SELECT `recht` FROM `prefix_downcats` LEFT JOIN `prefix_downloads` ON `prefix_downcats`.`id` = `prefix_downloads`.`cat` WHERE `prefix_downloads`.`id` = $fid"),0);
    	  $recht = (is_int($recht)?$recht:0);
        if (has_right($recht)) {
          $row = db_fetch_assoc(db_query("SELECT url FROM prefix_downloads WHERE id = ".$fid));
          $url = iurlencode($row['url']);
        } else {
          $url = 'http://'.$_SERVER["HTTP_HOST"].dirname($_SERVER["SCRIPT_NAME"]).'/index.php?downloads';
        }
        db_query("UPDATE prefix_downloads SET downs = downs +1 WHERE id = ".$fid);
    		header('location: '.$url);
    	  break;
      case 'upload' :
        if ( $allgAr['archiv_down_userupload'] == 1 AND loggedin() AND is_writeable ( 'include/downs/downloads/user_upload' ) ) {
          $title = $allgAr['title'].' :: Downloads :: User - Upload';
          $hmenu = '<a class="smalfont" href="?downloads">Downloads</a><b> &raquo; </b>User - Upload';
          $design = new design ( $title , $hmenu );
    	    $design->header();
          
          $re = icUpload(); 
    	    if ($re === true) {
            echo 'Erfolgreich eingetragen! ... ein Moderator oder Admin dieser Seite wird den Download in n&auml;chster Zeit freischalten.';
          } else {
            echo '<b>Error:</b><br />'.$re;
          }
          
          $design->footer();
        }
        break;
    	case 'toterlink' :
    		$design = new design ( 'Downloads' , 'Defeckter Link' );
    		$design->header();
    		if( $menu->get(2) != "send" ){
    			echo "<div align='center'><form method='post' action='index.php?downloads-toterlink-send'>";
    			echo get_antispam ('defeckterlink', 1);
    			echo "<input type='hidden' value='{$_SERVER['HTTP_REFERER']}' name='url'>\n
    				 <input type='hidden' name='user' value='{$_SESSION['authname']}'>\n
    				 <input type='submit' name='submit' value='Hallo {$_SESSION['authname']}, defeckten Link melden?' align='center'>\n
    				 </form></div>";
    		}else{
    			if( chk_antispam('defeckterlink') ){			
    				/* Absender */
    				$absender = 'Defeckter Link <'.$allgAr['adminMail'].'>';
    				/* Rueckantwort */
    				$reply = 'Defeckter Link <'.$allgAr['adminMail'].'>';
    				/* Betreff */
    				$subject = 'Defecter Link';
    				/* Nachricht */
    				$message = "Defecter Link von: {$_POST['user']}<br>Wo: <a href='{$_POST['url']}'>{$_POST['url']}</a>";
    				/* Baut Header der Mail zusammen */
    				$headers .= 'From:' . $absender . "\n";
    				$headers .= 'Reply-To:' . $reply . "\n"; 
    				$headers .= 'X-Mailer: PHP/' . phpversion() . "\n"; 
    				$headers .= 'X-Sender-IP: ' . $REMOTE_ADDR . "\n"; 
    				$headers .= "Content-type: text/html\n";			
    				/* Verschicken der Mail */
    				if( mail($allgAr['adminMail'], $subject, $message, $headers) ){
    					wd($_POST['url'], "Defeckter Link wurde gemeldet!");
    				}else{
    					wd($_POST['url'], "Defeckter Link melden fehlgeschlagen!");
    				}
    			}else{
    				echo "<center>Sorry Antispam ist nicht Koreckt! [ <a href='javascript:history.back();'>Zurück</a> ]</center>";
    			}
    		}
    		$design->footer();
    	break;
    }
    ?>



    downloads_show.htm
    <script language="JavaScript" type="text/javascript">
    <!--
    function doVote(n1,did) {
      document.location.href="index.php?downloads-show-" + did + "-z"+n1;
    }
    //-->
    </script>
    
    <table width="100%" class="border" border="0" cellspacing="1" cellpadding="3">
      <tr class="Chead">
    		<th colspan="4" align="center"><b>{name} {version}</b></th>
    	</tr><tr>
    	  <td class="Cmite">{_lang_name} (Version)</td>
    		<td class="Cnorm">{name} {version_kl}</td>
        <td class="Cmite" colspan="2" valign="top">{_lang_voting} {vote_wertung}
      </tr><tr>
    	  <td class="Cmite">{_lang_author}</td>
    		<td class="Cnorm">{creater}</td>
        <td class="Cnorm" rowspan="2" colspan="2" align="center">
        <table class="border" border="0" cellspacing="1" cellpadding="0">
          <tr>
            <td class="Cdark" onClick="doVote(1,{id})" style="cursor:pointer">&nbsp;1&nbsp;</td>
            <td class="Cmite" onClick="doVote(2,{id})" style="cursor:pointer">&nbsp;2&nbsp;</td>
            <td class="Cdark" onClick="doVote(3,{id})" style="cursor:pointer">&nbsp;3&nbsp;</td>
            <td class="Cmite" onClick="doVote(4,{id})" style="cursor:pointer">&nbsp;4&nbsp;</td>
            <td class="Cdark" onClick="doVote(5,{id})" style="cursor:pointer">&nbsp;5&nbsp;</td>
            <td class="Cmite" onClick="doVote(6,{id})" style="cursor:pointer">&nbsp;6&nbsp;</td>
            <td class="Cdark" onClick="doVote(7,{id})" style="cursor:pointer">&nbsp;7&nbsp;</td>
            <td class="Cmite" onClick="doVote(8,{id})" style="cursor:pointer">&nbsp;8&nbsp;</td>
            <td class="Cdark" onClick="doVote(9,{id})" style="cursor:pointer">&nbsp;9&nbsp;</td>
            <td class="Cmite" onClick="doVote(10,{id})" style="cursor:pointer">&nbsp;10&nbsp;</td>
          </tr>
        </table>
        </td>
    	</tr><tr>
    	  <td class="Cmite">{_lang_date}</td>
    		<td class="Cnorm">{datum}</td>
      </tr><tr>
    	  <td class="Cmite" width="110">{_lang_size}</td>
    		<td class="Cnorm">{size}</td>
        <td class="Cmite" width="110">{_lang_voter}</td>
    		<td class="Cnorm">{vote_klicks}</td>
    	</tr><tr>
    	  <td class="Cmite">{_lang_downloads}</td>
    		<td class="Cnorm">{downs}</td>
    	  <td class="Cmite">{_lang_seenfrom}</td>
    		<td class="Cnorm">{hits}</td>
    	</tr>
    </table>
    <p></p>
    <b><center>
      <a href="index.php?downloads-down-{id}">{_lang_download}</a>{surl}{toter_link}
    </center></b>
    <p></p>
    <table width="100%" class="border" border="0" cellspacing="1" cellpadding="3">
      <tr>
    	  <th class="Cdark">{_lang_desc}</th>
      </tr>
    		<td class="Cnorm">{ssurl}{descl}</td>
    	</tr>
    </table>
    Kein Support für den Raidplaner über PM.
    0 Mitglieder finden den Beitrag gut.
  6. #6
    User Pic
    boehserdavid Mitglied
    Registriert seit
    26.08.2006
    Beiträge
    2.122
    Beitragswertungen
    2 Beitragspunkte
    Hey, Leutz!

    Mal ne Frage. Kann man dann trotzdem noch auf den Downloadlink klicken? Wäre ja etwas blöd, wenn ein DL nicht funktioniert und man deswegen an einem Tag 500 Mails mit dem selben Text bekommt. ( Korrekt != Koreckt ) zwinker

    Schöner ist da wohl meine Lösung:
    Mit einer Rechteverwaltung, wann man den DL downloaden kann. Meldebutton nur sichtbar, wenn man downloaden kann ( also das Recht auf den DL hat ). PM an den User ID = 1
    Downloadlink tot 
    gesendet von am 16 Jul. 2008 - 07:16 
    Der Download verweist auf einen toten Link.
    
    Link zur Downloadseite
    Link zum Download
    
    Name (Version): TESTDOWNLOAD ()
    
    Der Download ist nur noch als Admin downloadbar...


    Info im DL
    Der Download wurde als nicht erreichbar markiert. Ein Download ist nicht möglich. Ein Administrator wurde schon benachrichtigt.


    Auf Meldebutton klicken:
    Der Download wurde als nicht erreichbar gemeldet.
    Danke für Ihre Mithilfe.


    Download schon gemeldet und nochmal auf Meldebutton geklickt:
    Der Download wurde schon als nicht erreichbar gemeldet.


    Entsperrung des Links funktioniert über das Adminmenü mit einem kleinen Icon. Downloadrecht muss dann aber manuell geändert werden.

    Natürlich würde das ganze auch ohne diese Rechteverwaltung funktionieren.

    Haben oder nicht haben?

    Testen könnt ihr das heute Nachmittag, weil da noch irgendwo ein Flüchtigkeitsfehler drin ist.

    Mit böhsen Grüßen
    BöhserDavid
    -Heute schon böhse gewesen?- Ab zur Community
    -No Support via Contact-
    0 Mitglieder finden den Beitrag gut.
  7. #7
    User Pic
    Balthazar3k Mitglied
    Registriert seit
    23.04.2006
    Beiträge
    422
    Beitragswertungen
    7 Beitragspunkte
    hehe, das is wohl besser zunge
    zu dem is ein Antispam eingebaut!


    Zuletzt modifiziert von Balthazar3k am 16.07.2008 - 11:18:42
    Kein Support für den Raidplaner über PM.
    0 Mitglieder finden den Beitrag gut.
  8. #8
    User Pic
    boehserdavid Mitglied
    Registriert seit
    26.08.2006
    Beiträge
    2.122
    Beitragswertungen
    2 Beitragspunkte
    Antispam? Wo?

    Der Ursprungsmod ist von Topolino und ich hab da nur den kleinen Meldebutton integriert, naja und noch etwas mehr^^

    Aber wie schon geschrieben, da ist noch ein kleiner Fehler drin, deswegen funzt das Teil noch nicht so ganz. Und die PM wird auch nochmal gemacht, dass jeder Admin ( -9 ) ein PM kriegt, falls der "Superadmin" mal weg ist.
    -Heute schon böhse gewesen?- Ab zur Community
    -No Support via Contact-
    0 Mitglieder finden den Beitrag gut.
  9. #9
    User Pic
    Balthazar3k Mitglied
    Registriert seit
    23.04.2006
    Beiträge
    422
    Beitragswertungen
    7 Beitragspunkte
        case 'toterlink' :
            $design = new design ( 'Downloads' , 'Defeckter Link' );
            $design->header();
            if( $menu->get(2) != "send" ){
                echo "<div align='center'><form method='post' action='index.php?downloads-toterlink-send'>";
                echo get_antispam ('defeckterlink', 1);
                echo "<input type='hidden' value='{$_SERVER['HTTP_REFERER']}' name='url'>\n
                     <input type='hidden' name='user' value='{$_SESSION['authname']}'>\n
                     <input type='submit' name='submit' value='Hallo {$_SESSION['authname']}, defeckten Link melden?' align='center'>\n
                     </form></div>";
            }else{
                if( chk_antispam('defeckterlink') ){            
                    /* Absender */
                    $absender = 'Defeckter Link <'.$allgAr['adminMail'].'>';
                    /* Rueckantwort */
                    $reply = 'Defeckter Link <'.$allgAr['adminMail'].'>';
                    /* Betreff */
                    $subject = 'Defecter Link';
                    /* Nachricht */
                    $message = "Defecter Link von: {$_POST['user']}<br>Wo: <a href='{$_POST['url']}'>{$_POST['url']}</a>";
                    /* Baut Header der Mail zusammen */
                    $headers .= 'From:' . $absender . "\n";
                    $headers .= 'Reply-To:' . $reply . "\n"; 
                    $headers .= 'X-Mailer: PHP/' . phpversion() . "\n"; 
                    $headers .= 'X-Sender-IP: ' . $REMOTE_ADDR . "\n"; 
                    $headers .= "Content-type: text/html\n";            
                    /* Verschicken der Mail */
                    if( mail($allgAr['adminMail'], $subject, $message, $headers) ){
                        wd($_POST['url'], "Defeckter Link wurde gemeldet!");
                    }else{
                        wd($_POST['url'], "Defeckter Link melden fehlgeschlagen!");
                    }
                }else{
                    echo "<center>Sorry Antispam ist nicht Koreckt! [ <a href='javascript:history.back();'>Zurück</a> ]</center>";
                }
            }
            $design->footer();
        break;
    Kein Support für den Raidplaner über PM.
    0 Mitglieder finden den Beitrag gut.
  10. #10
    User Pic
    boehserdavid Mitglied
    Registriert seit
    26.08.2006
    Beiträge
    2.122
    Beitragswertungen
    2 Beitragspunkte
    Ändert aber nix an der Situation, dass dein Postfach nach 2 Stunden voll ist, wenn ich das will, weil die Antispam, kann ich auch per Hand ausfüllen.
    Ich hingegen kriege NUR 1 PM und kann dann schon sehen, wenn ich auf den richtigen Link klicke, ob der DL wirklich tot ist, wenn nicht, 20 Sekunden im Admin -> Fertisch.
    Du aber musst alle Mails durchgucken, WEIL kann ja wirklich sein, dass da eine zwischen ist, die auf einen anderen DL verweist.

    Und ich schick dir dann so lange Mail in den Postfach, bis du den Mod wieder rausnimmst. Selbst wenn du meine E-Mail hast, weil ich geregt bin,
    Ist ne Mülladdi
    Du kommst auf die Spamliste
    Mein Page ist google.de

    2. Nicht jeder hat einen Mailserver oder gerade mal die SMTP Daten eingetragen. Und nun?

    *EDIT: Wenn ich es wollte, kriegst du nur Mails mit Spam (also nicht der Text der kommen soll) und Viren/Trojaner/Würmern drin, so wie dein Script aussieht, du hast vergessen die POST Daten zu überprüfen, schwerer Ausnahmefehler^^


    Zuletzt modifiziert von boehserdavid am 16.07.2008 - 12:27:34
    -Heute schon böhse gewesen?- Ab zur Community
    -No Support via Contact-
    0 Mitglieder finden den Beitrag gut.
  11. #11
    User Pic
    Balthazar3k Mitglied
    Registriert seit
    23.04.2006
    Beiträge
    422
    Beitragswertungen
    7 Beitragspunkte
    Das habe ich schon verstanden wie du das meintest mit PM aber ich habe auch nicht soviel zeit sowas auch zu machen, auserdem bist du ja dabei lächeln

    das stimmt habe ich nicht dran gedacht die Post daten zu überprüfen, aber es wird schon auf die defeckten download vwerwiesen!
    Kein Support für den Raidplaner über PM.
    0 Mitglieder finden den Beitrag gut.
Geschlossen

Zurück zu HTML, PHP, SQL,...

Optionen: Bei einer Antwort zu diesem Thema eine eMail erhalten