- gban: Ingyen kellene, de tegnapra
- Luck Dragon: Asszociációs játék. :)
- sh4d0w: Vigyázz a háttértáradra...
- Gurulunk, WAZE?!
- ubyegon2: Airfryer XL XXL forrólevegős sütő gyakorlati tanácsok, ötletek, receptek
- sziku69: Fűzzük össze a szavakat :)
- Sgr_A: Számítógépeim aktualizálása cseréje
- Geri Bátyó: Agglegénykonyha 3 – Paradicsomos káposzta (amit amúgy utálok)
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Parci: Milyen mosógépet vegyek?
Aktív témák
-
Deemer
csendes tag
Sikerült megoldanom a hibát .. pár +feltérellel kiegészítettem, és most már jó
-
Deemer
csendes tag
Sziasztok!
Egyik ismerősöm ajánlotta ezt az oldalt, és hát eddig csak pozitív dolgokat hallottam róla, így gondoltam megpróbálom én is :)
Nos akkor ... Olyat szeretnék csinálni a fórumomba, hogy ha a user volt a topicban, és ha érkezik új hozzászólás, akkor jelezze neki, hogy van a fórumon, és azon belül a megfelelő topicon belül új hsz az utolsó ottléte óta ...
Eddig a képek megvannak hozzá, meg meg is próbáltam írni magamtól, csak azaz igazság, hogy nem akar menni rendesen nekem , mert van amikor jelez a fórumnál, hogy új hsz van a fórumon belül, de egy topic se jelez, hogy azon belül lenne ...
Van nekem ilyenem, hogy:
SQL Tábla
CREATE TABLE `forum_visited` (
`username` VARCHAR(255) NOT NULL,
`forum` INT(11) NOT NULL,
`topic` INT(11) NOT NULL,
`replies` INT(11) NOT NULL,
`big_new` INT(11) NOT NULL DEFAULT '0',
`uid` INT(11) NOT NULL NULL,
`time` INT(11) NOT NULL NULL
) TYPE=InnoDB;
usernameba megy a felhasználó, fórumba a fórum idje, topicba a topic idje, repliesbe megy a megtekintés idején a topic kezdőhszére a válaszok száma( ezzel ellenőrzöm, hogy kell e jelölni, hogy új hsz, vagy sem ... ) a big_new az jelzi, hogy kint a fórumok listájánál jelezzen e, hogy van új hsz, vagy sem, uid a felhasználó id-je, és a time, pedig ha postolt, akkor annak az ideje, hogy mikor küldte el.
Ha belép a topicba, akkor beteszem a visited táblába az adatait, így ha lesz új hsz, akkor már neki fog jelezni .. legalábbis kéne neki :P
PHP Kód
if( isset( $_SESSION['user_logged_in'] )) {
$sql_uid = ''SELECT `id` FROM `users` WHERE `username`=''' . $_SESSION['username'] . ''''';
$query_uid = mysql_query( $sql_uid );
$fetch_uid = mysql_fetch_assoc( $query_uid );
$sql_visited = ''SELECT `big_new` FROM `forum_visited` WHERE `username`=''' . $_SESSION['username'] . ''' and `forum`='$req' and `topic`='$id' and `uid`='' . $fetch_uid['id'];
$query_visited = mysql_query( $sql_visited );
if(( mysql_num_rows( $query_visited ) == 1 )) {
$fetch_visited = mysql_fetch_assoc( $query_visited );
$sql_visited = ''UPDATE `forum_visited` SET `replies`='$visited_replies', `big_new`='0', `time`=''' . time() . ''' WHERE `username`=''' . $_SESSION['username'] . ''' and `forum`='$req' and `topic`='$id' and `uid`=''' . $fetch_uid['id'] . ''''';
mysql_query( $sql_visited );
}
else {
$sql_visited = ''REPLACE INTO `forum_visited`( `username`, `forum`, `topic`, `replies`, `big_new`, `uid`, `time` ) VALUES( ''' . $_SESSION['username'] . ''', '$req', '$id', '$visited_replies', 0, '' . $fetch_uid['id'] . '', ''' . time() . ''' )'';
mysql_query( $sql_visited );
}
};
Csak akkor csinálja, ha a user be van lépve ... lekérem a user idjét, összeteszem a visited táblából al ekérést, ha sikeres a lekérés, akkor updatelem a legfrisebb adatokkal és átteszem 0ra a big_newt, hogy ne jelezzen többet ebben a topicban és a fórum emiatt a topic miatt. Egyéb esetben valszeg most jön elsőnek a topicba, így beteszem a jelenlegi adatokat, big_new 0-val, így nem fog jelezni, csak ha később lesz benne új hsz.
Ha új témát nyit, vagy hozzászól, akkor beteszem a visited táblába big_new 1-el:
PHP Kód:
$sql_visited = ''SELECT `forum` FROM `forum_visited` WHERE `username`=''' . $_SESSION['username'] . ''' and `forum`='$req' and `topic`='$id' and `uid`='' . $fetch_uid['id'];
$query_visited = mysql_query( $sql_visited );
if( mysql_num_rows( $query_visited ) != 0 ) {
$sql_visited = ''UPDATE `forum_visited` SET `replies`='$visited_replies', `big_new`='1', `time`=''' . time() . ''' WHERE `username`=''' . $_SESSION['username'] . ''' and `forum`='$req' and `topic`='$id' and `uid`=''' . $fetch_uid['id'] . ''''';
mysql_query( $sql_visited );
}
else {
$sql_visited = ''REPLACE INTO `forum_visited`( `username`, `forum`, `topic`, `replies`, `big_new`, `uid`, `time` ) VALUES( ''' . $_SESSION['username'] . ''', '$req', '$id', '$visited_replies', 1, '' . $fetch_uid['id'] . '', ''' . time() . ''' )'';
mysql_query( $sql_visited );
}
Lényegét tekintve ua a kód, mint az előző, csak itt 1 lesz a big_new, hogy jelezzen a többieknek ...
Akkor asszem jöhet is a topicok listázása:
PHP Kód:
if( isset( $_SESSION['user_logged_in'] )) {
$sql_visited = ''SELECT `replies`, `time` FROM `forum_visited` WHERE `username`=''' . $_SESSION['username'] . ''' and `forum`='$id' and `topic`=''' . $cont['id'] . ''' and `uid`='' . $fetch_uid['id'];
$query_visited = mysql_query( $sql_visited );
if( mysql_num_rows( $query_visited ) == 1 ) {
$fetch_visited = mysql_fetch_assoc( $query_visited );
if( $fetch_visited['replies'] < $cont['replies'] ) {
$exp = explode( ''.'', $img );
$img = $exp[0] . ''_new.'' . $exp[1];
};
};
};
Lefut, ha user be van lépve. megnézem, hogy volt e már a user a topicban, ha volt, akkor lekérem a látogatása idejében a válaszok számát, ha ez kisebb, mint a jelenlegi, akkor jelölöm neki, hogy van új hsz.
És a fórumoknál is a jelölés:
PHP Kód:
if( isset( $_SESSION['user_logged_in'] )) {
$sql_uid = ''SELECT `id` FROM `users` WHERE `username`=''' . $_SESSION['username'] . ''''';
$query_uid = mysql_query( $sql_uid );
$fetch_uid = mysql_fetch_assoc( $query_uid );
$sql_visited = ''SELECT `big_new` FROM `forum_visited` WHERE `username`=''' . $_SESSION['username'] . ''' and `forum`=''' . $cont['id'] . ''' and `uid`='' . $fetch_uid['id'];
$query_visited = mysql_query( $sql_visited );
if( mysql_num_rows( $query_visited ) != 0 ) {
$fetch_visited = mysql_fetch_assoc( $query_visited );
if( $fetch_visited['big_new'] == 1 ) {
$exp = explode( ''.'', $img );
$img = $exp[0] . ''_new.'' . $exp[1];
};
};
};
Lefut, ha a user be van lépve. lekérem a user idjét. összeteszem a lekérést. ha a visszaadott sorok száma nem 0, akkor lekérem az adatokat, és ha a big_new az 1, akkor jelölöm, hogy új hsz van a témán belül.
Srry, hogy ilyen hosszú lett, csak szerepeltetni szerettem volna mindent. Remélem tudtok segíteni. lehet logikai felépítésében vna a gond, vagy nem tudom, de már itt töröm magam rajta egy hete, és nem akar sikerülni Ezért gondoltam, hogy hátha tudtok segíteni
Előre is köszönöm a segítségeteket! Laterz!
[Szerkesztve]
Aktív témák
- BESZÁMÍTÁS! ASUS Prime H370 i5 8600K 32GB DDR4 512GB SSD RTX 2060 Super 8GB Zalman N5 BitFenix 550W
- BESZÁMÍTÁS! MSI B450 R5 5600X 32GB DDR4 512GB SSD RTX 4060Ti 16GB ZALMAN N4 Enermax 650W
- Samsung Galaxy S20+ 128GB, Kártyafüggetlen, 1 Év Garanciával
- Lenovo ThinkCentre M710S SFF i5 6500 + 16 Gb Samsung 2.133 Mhz + 256 Gb Samsung NVME
- Asztali PC , i5 9400F , RX 5700 XT , 16GB DDR4 , 512GB NVME
- ÁRGARANCIA!Épített KomPhone Ryzen 5 7600X 32/64GB RAM RTX 5060 Ti 8GB GAMER PC termékbeszámítással
- Bomba ár! HP EliteBook Folio 1040 G1 - i5-G4 I 8GB I 256GB SSD I 14" HD+ I Cam I W10 I Garancia!
- Acer TravelMate P214 i3-1115G4 16GB 512GB 14" FHD 1év garancia
- Eladó Apple Macbook Pro 2015 / 12 hó jótállás
- Samsung Galaxy S23 Ultra / 8RAM 256GB / Gyárifüggetlen / 12 Hó Garancia
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft.
Város: Budapest