Nikdy som predtým nekódoval php a skutočne potrebujem tento veľmi jednoduchý skript.
tak mi dovoľte vysvetliť, čo potrebujem. používateľ prichádza na moju webovú stránku prostredníctvom pridruženého odkazu, takže keď dokončili presmerovanie adresa URL bude vyzerať takto
http://website.com/lp/index.html?sub=1&customer_id=1039be6e23b4420c3e1063dc44a04d
teraz mám na svojom webe odkaz na stiahnutie nakliknite na stiahnutie skontrolujte duplicitné IP adresy z databázy. ak nie duplikát zachytiť sub = "" & customer_id = "" z panela s adresou. uložiť do databázy s IP adresou (to na sledovanie)
a okamžite presmerovať na odkaz na stiahnutie
ak ip nie je duplikovaný
http://dl.website.com/download/downloadpop.aspx?id={customer_id}
ak je duplikovaný
http://dl.website.com/download/downloadpop.aspx?id=beenbefore
Ďakujem ti veľmi pekne!
odpovede:
1 pre odpoveď č. 1Je to dosť široké a nie je možné na ne správne odpovedať bez toho, že by ste vedeli akékoľvek podrobnosti o štruktúre databázy, ale základy tohto fungovania sú nasledujúce:
<?php
$sub = $_GET["sub"];
$customer_id = $_GET["customer_id"];
$ip = $_SERVER["REMOTE_ADDR"];
$db = mysql_connect(...) or die(mysql_error());
$quoted_sub = mysql_real_escape_string($sub);
$quoted_customer_id = mysql_real_escape_string($customer_id);
$quoted_ip = mysql_real_escape_string($ip);
$sql = "SELECT count(*) AS cnt FROM yourtable WHERE ip_address = "$quoted_id"";
$result = msyql_query($sql) or die(mysql_error());
$row = mysql_fetch_assoc($result);
if ($row["cnt"] == 0) {
$enc = urlencode($customer_id);
... IP isn"t in the database, so do the insert stuff ...
header(" http://dl.website.com/download/downloadpop.aspx?id=$enc");
} else {
header("Location: http://dl.website.com/download/downloadpop.aspx?id=beenbefore");
}
exit();
2 pre odpoveď č. 2
Pravdepodobne chcete hlavičku presmerovania:
http://php.net/manual/en/function.header.php
A mysql_connect, mysql_query, atď pre veci DB:
http://php.net/manual/en/book.mysql.php
Parametre GET môžete extrahovať z $ _GET:
http://php.net/manual/en/reserved.variables.get.php
Akékoľvek volanie na hlavičku () sa musí uskutočniť pred iným výstupom (pozri príklad na prepojenej stránke).
0 pre odpoveď č. 3
Po prvé, môžete prístup k týmto premenným cez $_GET()
.
Ďalej, vy VLOŽTE ich do databázy pomocou CHOP.
Nakoniec môžete niekoho presmerovať s príslušnými header()
:
header("Location:http://dl.website.com/download/downloadpop.aspx?id=beenbefore");