RewriteRule karakterek.
2018-06-20T18:14:11+02:00
2018-06-21T07:18:56+02:00
2022-08-18T21:35:39+02:00
Mofli
Sziasztok. Azt szeretném kérdezni,hogy hogy tudom megadni  hogy több karakterre titkosítson? Mert most pl: http://valami.hu/1 vagy http://valami.hu/b

És mindig valami random szerűt szeretnék pl : http://valami.hu/h5Csek47gQ

Ez van a htaccesben:

DirectoryIndex index.php # remove the next 3 lines if you see a 500 server error php_flag register_globals off php_flag magic_quotes_gpc off php_value display_errors 0 FileETag none ServerSignature Off Options All -Indexes <IfModule mod_rewrite.c> RewriteEngine On RewriteRule ^shorten/(.*)$ shorten.php?longurl=$3 [L] RewriteRule ^([0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ]{2})$ redirect.php?url=$3 [L] </IfModule>

Ez a kódom:

<?php /* * First authored by Brian Cray * License: http://creativecommons.org/licenses/by/3.0/ * Contact the author at http://briancray.com/ */ ini_set('display_errors', 0); $url_to_shorten = get_magic_quotes_gpc() ? stripslashes(trim($_REQUEST['longurl'])) : trim($_REQUEST['longurl']); if(!empty($url_to_shorten) && preg_match('|^https?://|', $url_to_shorten)) { require('config.php'); // check if the client IP is allowed to shorten if($_SERVER['REMOTE_ADDR'] != LIMIT_TO_IP) { die('You are not allowed to shorten URLs with this service.'); } // check if the URL is valid if(CHECK_URL) { $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url_to_shorten); curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE); $response = curl_exec($ch); $response_status = curl_getinfo($ch, CURLINFO_HTTP_CODE); curl_close($ch); if($response_status == '404') { die('Not a valid URL'); } } // check if the URL has already been shortened $already_shortened = mysql_result(mysql_query('SELECT id FROM ' . DB_TABLE. ' WHERE long_url="' . mysql_real_escape_string($url_to_shorten) . '"'), 0, 0); if(!empty($already_shortened)) { // URL has already been shortened $shortened_url = getShortenedURLFromID($already_shortened); } else { // URL not in database, insert mysql_query('LOCK TABLES ' . DB_TABLE . ' WRITE;'); mysql_query('INSERT INTO ' . DB_TABLE . ' (long_url, created, creator) VALUES ("' . mysql_real_escape_string($url_to_shorten) . '", "' . time() . '", "' . mysql_real_escape_string($_SERVER['REMOTE_ADDR']) . '")'); $shortened_url = getShortenedURLFromID(mysql_insert_id()); mysql_query('UNLOCK TABLES'); } echo BASE_HREF . $shortened_url; } function getShortenedURLFromID ($integer, $base = ALLOWED_CHARS) { $length = strlen($base); while($integer > $length - 1) { $out = $base[fmod($integer, $length)] . $out; $integer = floor( $integer / $length ); } return $base[$integer] . $out; }
Mutasd a teljes hozzászólást!
Ha egy véletlenszerűen megkevert karakterlánc kell, akkor esetleg próbálkozz az str_shuffle-vel...
Mutasd a teljes hozzászólást!

Tetszett amit olvastál? Szeretnél a jövőben is értesülni a hasonló érdekességekről?
abcd