Miért nem hajtódik végre a két parancs a kódban?
<?php
require_once("getip.php");
$partner = ($_GET['partner']);
$con = mysqli_connect('host', 'user', 'pass', 'db');
if (!$con)
{
die('Could not connect: ' . mysqli_error($con));
}
$query = mysqli_query($con,"SELECT * FROM `banner_ip` WHERE `Host` = '".getip()."'");
$row = mysqli_fetch_array($query);
mysqli_free_result($query);
if (empty($row['id']))
{
$kredit = mysqli_query($con,"UPDATE Users_login SET kredit = (kredit + 5) WHERE Id='".$partner."'");
$ip = mysqli_query($con,"INSERT INTO banner_ip (Uid, date, Host) VALUES ('".mysqli_real_escape_string($con,$partner)."', 'NOW()', '".mysqli_real_escape_string($con,getip())."'");
{
echo '<!DOCTYPE php>
<html>
<head>
<meta http-equiv="refresh" content="0; URL= [link] />
</head>
<body>
</body>
</html>
';
}
}
else
{
echo '<!DOCTYPE php>
<html>
<head>
<meta http-equiv="refresh" content="0; URL= [link] />
</head>
<body>
</body>
</html>
';
}
mysqli_close($con);
?>
A getip.php-val kérem le a felhasználó IP címét, a $partner pedig a felhasználó ID-éje.
Olyasmit akarnék mint itt a Gyakorikérdéseken a bannercsere.
Ja és még egy kérdés: Azt, hogy lehet, hogy a benner_ip tábla minden éjfélkor kiürüljön?
Köszönöm!
bővebben ? ebből sok mindent nem lehet érteni. milyen parancsról van szó? program játék? dos rendszer?
kisujunkból szopjuk ki mit takar ez a csekély le írás?
Echo-zt ki a $partnert! Van értéket?
"kisujunkból szopjuk ki mit takar ez a csekély le írás?"
CRON
1. az IP-t nem kéregetjük folyton, mert felesleges! A script elején elkéred, bedobod egy változóba, és a továbbiakban azzal dolgozol
2. az elkért ip-t nem kell escapelni, felesleges
3. nem ellenőrzöd, hogy létezik-e a $_GET['partner'] -> hatalmas biztonsági rés!
4. átirányítást nehogy már meta taggal csinálj! ha a html header nincs elküldve, akkor tessék php-ből irányítni: header('Location: index.php');
5. tanuljuk már meg végre, adatbázis, tábla, mezőnevek KIS BETŰVEL!
6. CRON beállítására nézz rá neten. Otthoni tesztnél, ha windows-od van, akkor a feladatkezelővel indíthatsz időzített php futtatást. Ha linuxod van (a legtöbb éles szerveren ez fut), akkor egy cron parancsot kell megadnod a szervernek, ami egy adott php fájlt a megadott időben lefuttat.
isset()
Nem lenne célszerűbb, ha sorban és alaposabban vennéd a PHP leckéket?
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!