Při vypsání statistik ukázat jméno místo ip – PHP – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama
Reklama

Při vypsání statistik ukázat jméno místo ip – PHP – Fórum – Programujte.comPři vypsání statistik ukázat jméno místo ip – PHP – Fórum – Programujte.com

 

Hledá se programátor! Plat 1 800 € + bonusy (firma Boxmol.com)
prema
~ Anonymní uživatel
34 příspěvků
10. 3. 2008   #1
-
0
-

Potreboval bych pomoct se skriptikem, kterym vypisuju vsechny ip, ktere navstivily danou stranku za urcity den.
Tyto vypsane ip bych chtel porovnat se záznamy v DB (mysql) a pokud se ip shoduji, tak vypsat místo cisel jmeno navstevnika z DB.
Uvedu priklad:

Mám tabulku a v ni 2 sloupce - ip a jmeno. Ve sloupci ip mam ip adresy a ve sloupci jmeno mam ke kazde ip jmeno uzivatele.

Dále mám dalsi tabulku v DB - coz je statistika nasvtevnosti za dnesni den na stránce.

Chtěl bych vsechny ip adresy vypsat na stranku, kde mam prehled statistik a pokud se ip adresa shoduje se záznamem v 1.tabulce kde mam jmena uzivatelu danych ip, tak bych misto ip chtel vypsat na stranku jmeno navstevnika.

Vse mam udelany pres tento skriptik:



<?php
//vypsání ip adres návštěvníků za dnešek

include "config.php"; // connect to DB
mysql_query("SET NAMES utf8");


$query = 'select ip from pristupy where datum = now() order by time DESC';
$result = mysql_query($query);

$num_result = mysql_num_rows($result);
for ($i = 0; $i < $num_result; $i++)
{
$zaznam = mysql_fetch_object($result);

echo '<tr>
<td><div>'.$zaznam->ip.'</div></td>
<td><div>'.nahrad($zaznam->ip).'</div></td>
</tr>';

}

?>


dále skriptik, kterym nahrazuju ip-čka jmeny návštěvníků je tento:


<?php
include "config.php"; // connect to DB
mysql_query("SET NAMES utf8");

function nahrad($ip){
$ip= htmlspecialchars($ip);
$najit=array(

'213.211.xxx.xxx',
'213.211.xxx.xxx',
'212.125.xxx.xxx'

);

$nahradit=array (

'pepa',
'karel',
'bohus'

);

$ip=str_replace($najit, $nahradit, $ip);
return $ip;
}

?>


jediny problem ktery bych chtel vyresit, je misto sloziteho vypisovani ip adres a jmen návštěvníků na stranku (v kodu) bych chtel importovat data z DB (predem pripravene tabulky se jmenem a ip).
Neporadil byste pls nekdo jak to udelat tak, aby jsem nemusel vypisovat ip-čka a jmena do kodu, ale bralo by se to primo z DB?
diky moc

Nahlásit jako SPAM
IP: 213.211.55.–
Reklama
Reklama
byF0
Návštěvník
11. 3. 2008   #2
-
0
-

Něco jako:

.. CONCAT(promenne_pro_spojeni)
- př.: SELECT CONCAT(kniha,' - ',autor) AS knihautor FROM knihovna;
- vypíše novy sloupec "knihautor", který bude obsahovat data ve formátu: název knihy - název autora

Nahlásit jako SPAM
IP: 85.207.69.–
insider0
Věrný člen
12. 3. 2008   #3
-
0
-

zdravim,
nejsem si jisty, jeslti nepisu blbost, kdysi jsem to tak nekde cetl a nemam cas to ted vyzkouset, ale melo by stacit pouzit LEFT(RIGHT) JOIN na tech tabulkach a spojit to na ip adresach, cimz ty tabulky spojis a pokud zaznamu z prvni tabulky neodpovida zadny zaznam z druhe, tak vrati pouze to ip beze jmena.

$dotaz = "select p.ip,u.jmeno from pristupy as p left join uzivatele as u on p.ip = u.ip where datum = NOW()";

$vysledek = mysql_query($dotaz);
...
echo $rada->ip.(empty($rada->jmeno) ? "":" - ".$rada->jmeno);

Nahlásit jako SPAM
IP: 147.32.192.–
I don't want to see you go,[br] The sky is over[br] Even though we can't afford[br] The sky is over,[br] The sky is over us.[br][br] CIVILIZATION IS OVER
byF0
Návštěvník
13. 3. 2008   #4
-
0
-

Jsem si to zas blbě přečetl... Následující je v podstatě obdoba JOINU. Nicméně Ti to nevrátí ip bez záznamu u uživatele... nemám teď prostor to zkoušet.

SELECT statistiky.ip,uzivatel.jmeno FROM uzivatel,statistiky WHERE uzivatel.ip = statistiky.ip

Nahlásit jako SPAM
IP: 90.176.137.–
prema
~ Anonymní uživatel
34 příspěvků
20. 3. 2008   #5
-
0
-

zamotali jsme se v tom...
jednoduse - v 1 tabulce mysql mam data o navstevnicich webu (jmeno, ip, misto pripojeni - skola, prace, doma)
ve druhy tabulce mam ip-cka, ktera dnes navstivila danou stranku.
chci vytvorit stranku, na ktere se zobrazi jen ti navstevnici (jmeno, ip, misto pripojeni), kteri dnes vstoupili na danou stranku.
tot fse:)

Nahlásit jako SPAM
IP: 213.211.55.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 96 hostů

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032016 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý