| Autor | Správa |
B.A.X.O
 Užívateľ
 Založený: 22.01.2008 Príspevky: 426 Bydlisko: Bratislava - Petržalka
 | Zaslal: Št 07.02.08 17:48 |   |
Zdar ludia! potreboval by som volaco v takom formate ako OCHRANA PROTI SPAMEROM. asi takto by to malo fungovat:
Napíše prispevok, ale zaznamena sa jeho IP...server REMOTE ADD vim to tam mam. A ked bduem xciet znovu volaco napisat vyhodi sa ALERT:
Ochrana proti spamerom: dalsi prispevok je mozne napisat az po 20minutach.
Islo by to pls? zakzauje to pridavanie pripevkov z jednej IP adresy. Ale neviem ako na to. Urcite pojde zase o podmienky, ale v tych osm debil...takze pomozte dakto. |
| |
    |
 |
tatysp
 Užívateľ
 Založený: 01.09.2007 Príspevky: 141 Bydlisko: 127.0.0.1
 | Zaslal: Št 07.02.08 19:23 |   |
ak mas datum/cas pridania prispevku vo formate DATETIME (a jeho klony), tak len:
| kód: |
if(mysql_fetch_row(mysql_query("SELECT ... FROM table WHERE ip='{$_SERVER["REMOTE_ADDR"]}' AND kedy>=SUBDATE(NOW(),INTERVAL 20 MINUTE)"))){
echo"Si spamer";
}else{
//normal spracovanie
};
|
|
_________________ It easier to run away | |
        |
 |
B.A.X.O
 Užívateľ
 Založený: 22.01.2008 Príspevky: 426 Bydlisko: Bratislava - Petržalka
 | Zaslal: Št 07.02.08 21:03 |   |
ten script je oki, len neviete niekto ako to dat do unixoveho casu? pls poradte lebo to ma problemy ako ze ignoruje ten cas 20min co tam je |
| |
    |
 |
tatysp
 Užívateľ
 Založený: 01.09.2007 Príspevky: 141 Bydlisko: 127.0.0.1
 | Zaslal: Št 07.02.08 21:14 |   |
aký formát času máš v tabuľke ? -> DATETIME / TIMESTAMP, pripadne ešte iný ? |
_________________ It easier to run away | |
        |
 |
B.A.X.O
 Užívateľ
 Založený: 22.01.2008 Príspevky: 426 Bydlisko: Bratislava - Petržalka
 | Zaslal: Št 07.02.08 21:29 |   |
ehm neviem s php zacinam tu je kod:
CREATE TABLE `guestbook` (
`id` int(11) NOT NULL auto_increment,
`name` varchar(100) collate latin2_czech_cs NOT NULL,
`email` varchar(100) collate latin2_czech_cs NOT NULL,
`ip` varchar(15) collate latin2_czech_cs NOT NULL,
`site` varchar(100) collate latin2_czech_cs NOT NULL,
`text` text collate latin2_czech_cs NOT NULL,
`time` varchar(100) collate latin2_czech_cs NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin2 COLLATE=latin2_czech_cs AUTO_INCREMENT=111 ; |
| |
    |
 |
tatysp
 Užívateľ
 Založený: 01.09.2007 Príspevky: 141 Bydlisko: 127.0.0.1
 | Zaslal: Št 07.02.08 21:35 |   |
No preto ti to nejde - čas máš ako varchar(), čiže ako text, nie ako čas v skutočnosti. Zmeň to na `time` datetime NOT NULL a potom ti to vyššie pôjde. |
_________________ It easier to run away | |
        |
 |
kmsa
 Užívateľ
 Založený: 26.07.2006 Príspevky: 1383 Bydlisko: Slovakia-Košice
 | Zaslal: Št 07.02.08 22:05 |   |
nemusi to zmenit
len ten cas musi uz ukladat priamo cas ktory sa vitvoril v php
je to niekedy lepsie ked napriklad ani jeden z typov ti nevihovuje kedze si ten cas mozes ulozit ako len chces ci uz z textovou formou alebo ciselnou alebo obojakou |
_________________ CPU: Intel E7200 momentalne default + freezer 7 pro | MB: Gigabyte GA-P35-DS3 rev. 2.0 F14 | RAM: A-DATA 4x1GB EE Vitesta | VGA: ATI Radeon HD4850 Sapphire Dual Slot | Monitor: BenQ E2200HD+17CTX | HDD: WD 3200AAKS + Maxtor 6Y080M0 80GB SATAII + 120GB ATA Barracuda | PSU: Corsair VX450W | Windows 7 Ultimate Sk | REPRO: Logitech X-210
+
IPhone 3GS JB 3.1.3 (new BR)
múdry sa postara o seba ale ešte múdrejši sa postara aj o druhých | |
    |
 |
p360t
 Skúsený užívateľ
 Založený: 30.05.2006 Príspevky: 1775 Bydlisko: BA - EASTSIDE
 | Zaslal: Pi 08.02.08 10:04 |   |
Kmsa, zároveň si tak dobrovoľne odstrihneš prístup k mnohým užitočným MySQL funkciám, okrem vyššie spomenutej aj napr. TIMESTAMPDIFF, keď potrebuješ presne zrátať rozdiel 2 časov atď.
Preformátovať čas z TIMESTAMP formátu do akéhokoľvek textového je veľmi jednoduché. Opačná konverzia je ťažkopádna a náchylná k chybám. VARCHAR je naozaj ten najhorší spôsob, akým uložiť dátum a čas do databázy. |
_________________ [quote="A. S. Tanenbaum"]The terms LF, MF, and HF refer to low, medium, and high frequency, respectively. Clearly, when the names were assigned, nobody expected to go above 10 MHz, so the higher bands were later named the Very, Ultra, Super, Extremely, and Tremendously High Frequency bands. Beyond that there are no names, but Incredibly, Astonishingly, and Prodigiously high frequency (IHF, AHF, and PHF) would sound nice.[/quote] | |
    |
 |
B.A.X.O
 Užívateľ
 Založený: 22.01.2008 Príspevky: 426 Bydlisko: Bratislava - Petržalka
 | Zaslal: Pi 08.02.08 10:59 |   |
zhruba asi takto: nefakci to . Ked som dal miesto varchar DATETIME tak to islo ok. len miesto casu som mal: 00-0000-0000-000 zaujimave...a ten kod i tak nesiel |
| |
    |
 |
p360t
 Skúsený užívateľ
 Založený: 30.05.2006 Príspevky: 1775 Bydlisko: BA - EASTSIDE
 | Zaslal: Pi 08.02.08 11:56 |   |
No musíš tam tie dátumy nahodiť nanovo. Samozrejme, že sa to vynulovalo, viď môj predchádzajúci príspevok:
| p360t napísal: | | Preformátovať čas z TIMESTAMP formátu do akéhokoľvek textového je veľmi jednoduché. Opačná konverzia je ťažkopádna a náchylná k chybám. | Preto sa MySQL ani nesnažilo skonvertovať obsah VARCHAR-u do dátumu, ale vynulovalo ho. Potom ti to už pôjde. |
_________________ [quote="A. S. Tanenbaum"]The terms LF, MF, and HF refer to low, medium, and high frequency, respectively. Clearly, when the names were assigned, nobody expected to go above 10 MHz, so the higher bands were later named the Very, Ultra, Super, Extremely, and Tremendously High Frequency bands. Beyond that there are no names, but Incredibly, Astonishingly, and Prodigiously high frequency (IHF, AHF, and PHF) would sound nice.[/quote] | |
    |
 |
kmsa
 Užívateľ
 Založený: 26.07.2006 Príspevky: 1383 Bydlisko: Slovakia-Košice
 | Zaslal: Pi 08.02.08 15:55 |   |
p360t mas pravdu ale ja som nepovedal ze to tak robym len som poznamenal ake to ma vyhody aj ked omnoho viac nevihod |
_________________ CPU: Intel E7200 momentalne default + freezer 7 pro | MB: Gigabyte GA-P35-DS3 rev. 2.0 F14 | RAM: A-DATA 4x1GB EE Vitesta | VGA: ATI Radeon HD4850 Sapphire Dual Slot | Monitor: BenQ E2200HD+17CTX | HDD: WD 3200AAKS + Maxtor 6Y080M0 80GB SATAII + 120GB ATA Barracuda | PSU: Corsair VX450W | Windows 7 Ultimate Sk | REPRO: Logitech X-210
+
IPhone 3GS JB 3.1.3 (new BR)
múdry sa postara o seba ale ešte múdrejši sa postara aj o druhých | |
    |
 |
Tominator
 Zablokovaný užívateľ
 Založený: 21.02.2007 Príspevky: 4009
 | Zaslal: Pi 08.02.08 15:56 |   |
len doplním, aj keď to tu bolo mnoho-krát povedané (hlave p360t), že proti spamerom nieje žiadna poriadna ochrana, pertože sa ti IP môžu zmeniť kedykoľvek, cookies vypnúť, príp. vymazať a sessions odstavíš vypnutím a znovu zapnutím prehliadača, takže vravieť o nejak 100% ochrane sa nedá |
| |
  |
 |
|