kaqp Ierakstīts Marts 24, 2008 Share Ierakstīts Marts 24, 2008 (labots) Vai kāds Lūdzu var pateikt, kā es varu izcelt uploader ja tam $row['cnt'] ir lielāks par 100 un 200 ? Kods : http://paste.php.lv/7033 Ja kāds nesaprata šis kods ņem datus no mysql un ieraxta html. piemēram: Jānis : 210 Igors : 140 Māris : 5 Labots Marts 24, 2008 - kaqp Link to comment Share on other sites More sharing options...
jx Marts 24, 2008 Share Marts 24, 2008 (labots) Vai tu prastu veikt iekrāsošanu, ja tev būtu dots gala html kods? Lūdzu, iemet pašreiz radīto html un to, kādu tu vēlētos iegūt. Pēc tam skatīsiesimies, kurā vietā veikt izmaiņas. Edit. Taču tas nav tavs html kods. OK, jautājums - vai tu proti darboties ar html un css? Labots Marts 24, 2008 - jx Link to comment Share on other sites More sharing options...
kaqp Marts 24, 2008 Author Share Marts 24, 2008 (labots) Jā es protu html + css. Šo izveido šis kods: »» kaqp - 206 »» madebymama - 140 »» Saphire - 12 »» m0nty - 6 »» genacvale - 3 »» muzons - 1 »» kaqp - 206 <br> »» madebymama - 140 <br> »» Saphire - 12 <br> »» m0nty - 6 <br> »» genacvale - 3 <br> »» muzons - 1 <br> Bet kā lai kods izceļ visus kam ir pāri 200 ar <b> un visus kam ir paari 100 ar <i> »» kaqp - 206 »» madebymama - 140 »» Saphire - 12 »» m0nty - 6 »» genacvale - 3 »» muzons - 1 Labots Marts 24, 2008 - kaqp Link to comment Share on other sites More sharing options...
Jencha Marts 24, 2008 Share Marts 24, 2008 if (rezultāts lielāks par 200) liekam tekstu span tagos ar atribūtu class="izcelt" un iekš CSS ierakstam span.izcelt { font-weight: bold; } Link to comment Share on other sites More sharing options...
jx Marts 24, 2008 Share Marts 24, 2008 (labots) pamēģini šo function generate_bestusers() { global $bytes,$WWW; $sql = @mysql_query("select uploader, count(uploader) as cnt from m3_mp3 where active=1 group by uploader order by cnt DESC LIMIT 100"); if ($sql && @mysql_num_rows($sql)>0) { $i=0; $to_file=""; while ($row = @mysql_fetch_array($sql, MYSQL_ASSOC)) { $i++; $number=$row['id']; $row_html = " »» " . unsafe_str($row['uploader']) . " - " . unsafe_str($row['cnt']) . " <br />"; if($row['cnt'] > 200) { $to_file .= '<strong>' . $row_html . '</strong>'; } elseif($row['cnt'] > 100) { $to_file .= '<em>' . $row_html . '</em>'; } else { $to_file .= $row_html; } } } $fp = fopen ("./../html/bestusers.html", "w+"); fwrite ($fp, $to_file); fclose ($fp); } Atļāvos nodzēst koda fragmentu, kas neko nedarīja, kā arī smukāk noformēt. Labots Marts 24, 2008 - jx Link to comment Share on other sites More sharing options...
kaqp Marts 24, 2008 Author Share Marts 24, 2008 (labots) Milzīgs paldies ! Viss strādā kā nākas ! ;-) :wink: 8) Bet vai tas php kods var ņemt informāciju no diviem mysql tables ? Piemēram , ja niks ir admins, viņam priekšā būt uzraxtīts admins. Jā nav grūti lūdzu uzraksti, ofc ja iespējams. sql: table = m3_users nez kā pareizi sauc... row = access access iedalās : 1 - users 2 - admin Labots Marts 24, 2008 - kaqp Link to comment Share on other sites More sharing options...
edw Marts 24, 2008 Share Marts 24, 2008 sql:table = m3_users nez kā pareizi sauc... row = access access iedalās : 1 - users 2 - admin te redzu 1 tabulu un 2 kolonas taja! nevis 2 tabulas, varbut ari parpratu Link to comment Share on other sites More sharing options...
kaqp Marts 24, 2008 Author Share Marts 24, 2008 (labots) nu varbūt arī tā , mysql un php nav mana stiprā puse. Lūk: TABLE `m3_users` ( `id` `login` `passwd` `age` `city` `mail` `mail_chk` `ip` `access` <--- ja 1 tad member , ja 2 tad admins `www` `key` `date` ) Labots Marts 24, 2008 - kaqp Link to comment Share on other sites More sharing options...
jx Marts 24, 2008 Share Marts 24, 2008 kaqp Es varu palīdzēt, ja kaut kas nesanāk. Priekšā saku reti un tikai pirmo reizi - neesmu nekāds bezmaksas darbaspēks, kas tagad visu darīs tavā vietā. Lūdzu, sameklē kādu html un php tutoriāli un mācies. Mēģini kaut ko paveikt pats - ja kas nesanāks, palīdzēsim un parādīsim pareizo virzienu. Link to comment Share on other sites More sharing options...
kaqp Marts 24, 2008 Author Share Marts 24, 2008 Jā es saprotu, tas ir pēdējais ko jautāju iekš php un mysql. Būšu ļoti pateicīgs ja atbildēsi, bet ja nē, tad nē. PHP esmu mēģinājis apgūt, esmu pat nopircis grāmatas. Bet nu iet kā pa celmiem. Link to comment Share on other sites More sharing options...
jx Marts 24, 2008 Share Marts 24, 2008 Neredzu tavus mēģinājumus sasniegt rezultātu. Link to comment Share on other sites More sharing options...
eMDiiPii Marts 24, 2008 Share Marts 24, 2008 Iesaku autoram virs katras koda rindiņas uzrakstīt - ko tā dara. Link to comment Share on other sites More sharing options...
kaqp Marts 24, 2008 Author Share Marts 24, 2008 function generate_bestusers() { $access = @mysql_query("SELECT access FROM m3_users"); { if($access > 1) { admin; } else { user; } } global $bytes,$WWW; $sql = @mysql_query("select uploader, count(uploader) as cnt from m3_mp3 where active=1 group by uploader order by cnt DESC LIMIT 100"); if ($sql && @mysql_num_rows($sql)>0) { $i=0; $to_file=""; while ($row = @mysql_fetch_array($sql, MYSQL_ASSOC)) { $i++; $number=$row['id']; $row_html = " »» " . unsafe_str($row['uploader']) . " - " . unsafe_str($row['cnt']) . " <br />"; if($row['cnt'] > 200) { $to_file .= '<strong>' .$row_html $access. '</strong>'; } elseif($row['cnt'] > 100) { $to_file .= '<em>' .$row_html $access. '</em>'; } else { $to_file .= $row_html; } } } $fp = fopen ("./../html/bestusers.html", "w+"); fwrite ($fp, $to_file); fclose ($fp); } Kas nav pareizi ? Link to comment Share on other sites More sharing options...
jx Marts 24, 2008 Share Marts 24, 2008 Nav nepieciešams veik jaunu sql vaicājumu - izmanto jau esošā vaicājuma $sql = @mysql_query("select uploader, count(uploader) as cnt from m3_mp3 where active=1 group by uploader order by cnt DESC LIMIT 100"); datus. Lai pārliecinātos, ka seko līdzi - lūdzu, parādi, kurās rindiņās esošajā kodā šie dati tiek lietoti? Link to comment Share on other sites More sharing options...
kaqp Marts 24, 2008 Author Share Marts 24, 2008 if ($sql && @mysql_num_rows($sql)>0) un while ($row = @mysql_fetch_array($sql, MYSQL_ASSOC)) ? Link to comment Share on other sites More sharing options...
jx Marts 24, 2008 Share Marts 24, 2008 Sameklēt mainīgo jau nav grūti. Roc vēl dziļāk. Link to comment Share on other sites More sharing options...
kaqp Marts 24, 2008 Author Share Marts 24, 2008 ($row['uploader']) ($row['cnt']) ($row['cnt'] > 200) ($row['cnt'] > 100) Link to comment Share on other sites More sharing options...
eMDiiPii Marts 24, 2008 Share Marts 24, 2008 Piezīme: Labāk pārbaudīt rezultātu, nevis izmantot @ Respektīvi <?php $result=mysql_query("SELECT field FROM table WHERE 1 = 1 "); if($result === false) exit; //Vai arī throw new exception vai trigger_error ... ?> Link to comment Share on other sites More sharing options...
jx Marts 24, 2008 Share Marts 24, 2008 housemouse Nejauc gaisu . kaqp Ļoti jauki. Tagad tajā vietā, kur tiek html kodā ievietots $row['uploader'] kaut kur blakām vajadzētu ielikt, pēc analoģijas, piekabināt klāt $row['access'], vai ne? Lūdzu, pamēģini un ziņo, kā veicas. tiem, kas prot programmēt un grib tūliņ mesties ar labojumiem kuš! Līdz tam visam nonāksim . Link to comment Share on other sites More sharing options...
kaqp Marts 24, 2008 Author Share Marts 24, 2008 $row_html = " »» " . unsafe_str($row['uploader']) . " - " . unsafe_str($row['cnt']) . " - " . unsafe_str($row['access']) . " <br />"; Link to comment Share on other sites More sharing options...
jx Marts 24, 2008 Share Marts 24, 2008 Neesi bailīgs - pamēģini padarbināt un pastāsti, kas notiek. Link to comment Share on other sites More sharing options...
kaqp Marts 24, 2008 Author Share Marts 24, 2008 nekas nenotika, vienkārši tukša vieta. Link to comment Share on other sites More sharing options...
eMDiiPii Marts 24, 2008 Share Marts 24, 2008 $access = @mysql_query("SELECT access FROM m3_users"); { if($access > 1) { admin; } else { user; } } Ko atgriež mysql_query funkcija ? Koda sākumā ievieto error_reporting(E_ALL); ini_set('display_errors', true); un apskati kļūdu žurnālu ... Ja nelīdz, aizvāc visus @ un tad aplūko kļūdas paziņojumus ... Link to comment Share on other sites More sharing options...
jx Marts 24, 2008 Share Marts 24, 2008 (labots) housemouse $access = @mysql_query("SELECT access FROM m3_users"); { if($access > 1) { admin; } else { user; } } mēs neaiztiekam - tas pilnīgi un galīgi nepareizs kods. Nodzēšam un aizmirstam. kaqp Ļoti pareizi - tukša vieta. Vajadzētu parādīt arī kļūdas paziņojumu (skat. housemouse koda otro fragmentu). Tad, kad tu ieraudzīsi kļūdas paziņojumu, izdomāsim, kādēļ tas tur ir un kā to labot. Lūgšu pārējiem īpaši nesteigties ar priekšā teikšanu. Ļausim jaunietim tikt līdzi un procesā ko iemācīties . Labots Marts 24, 2008 - jx Link to comment Share on other sites More sharing options...
kaqp Marts 24, 2008 Author Share Marts 24, 2008 (labots) ievietoju koda sākuma error_reporting(E_ALL); ini_set('display_errors', true); Nekādu kļūdu man tas neuzrādīja. Mēģināju arī bez @. <? error_reporting(E_ALL); ini_set('display_errors', true); function generate_bestusers() { global $bytes,$WWW; $sql = @mysql_query("select uploader, count(uploader) as cnt from m3_mp3 where active=1 group by uploader order by cnt DESC LIMIT 100"); if ($sql && @mysql_num_rows($sql)>0) { $i=0; $to_file=""; while ($row = @mysql_fetch_array($sql, MYSQL_ASSOC)) { $i++; $number=$row['id']; $row_html = " »» " . unsafe_str($row['uploader']) . " - " . unsafe_str($row['cnt']) . " - " . unsafe_str($row['access']) . " <br />"; if($row['cnt'] > 200) { $to_file .= '<strong>' . $row_html . '</strong>'; } elseif($row['cnt'] > 100) { $to_file .= '<em>' . $row_html . '</em>'; } else { $to_file .= $row_html; } } } $fp = fopen ("./../html/bestusers.html", "w+"); fwrite ($fp, $to_file); fclose ($fp); } ?> Labots Marts 24, 2008 - kaqp Link to comment Share on other sites More sharing options...
Val Marts 24, 2008 Share Marts 24, 2008 nezinu abu tabulu struktūru, bet izveido tak vienu pieprasījumu ar visu vajadzīgo infu un access katram lietotājam. Ā, un $bytes, $WWW un $i nafig nav vajadzīgi Link to comment Share on other sites More sharing options...
jx Marts 24, 2008 Share Marts 24, 2008 un šādi? function generate_bestusers() { error_reporting(E_ALL); ini_set('display_errors', true); global $bytes,$WWW; $sql = @mysql_query("select uploader, count(uploader) as cnt from m3_mp3 where active=1 group by uploader order by cnt DESC LIMIT 100"); if ($sql && @mysql_num_rows($sql)>0) { $i=0; $to_file=""; while ($row = @mysql_fetch_array($sql, MYSQL_ASSOC)) { $i++; $number=$row['id']; $row_html = " »» " . unsafe_str($row['uploader']) . " - " . unsafe_str($row['cnt']) . " - " . unsafe_str($row['access']) . " <br />"; if($row['cnt'] > 200) { $to_file .= '<strong>' . $row_html . '</strong>'; } elseif($row['cnt'] > 100) { $to_file .= '<em>' . $row_html . '</em>'; } else { $to_file .= $row_html; } } } $fp = fopen ("./../html/bestusers.html", "w+"); fwrite ($fp, $to_file); fclose ($fp); } Link to comment Share on other sites More sharing options...
kaqp Marts 24, 2008 Author Share Marts 24, 2008 nē nekā nav. Balta lapa Link to comment Share on other sites More sharing options...
jx Marts 24, 2008 Share Marts 24, 2008 arī lietotāju saraksts vairs neparādās? Link to comment Share on other sites More sharing options...
Val Marts 24, 2008 Share Marts 24, 2008 un kad taisies to funkciju izsaukt? Link to comment Share on other sites More sharing options...
kaqp Marts 24, 2008 Author Share Marts 24, 2008 (labots) parādās , tikai html failā nick - 142 - Notice: Undefined index: id Notice: Undefined index: access Ir jānorāda kur atrodas access, kā lai to izdaru ? Labots Marts 24, 2008 - kaqp Link to comment Share on other sites More sharing options...
jx Marts 24, 2008 Share Marts 24, 2008 (labots) OK, neiespringsim uz servera īpatnībām. Tātad - kam vajadzēja notikt. Brīdī, kad tu centies piekļūt $row['access'], vajadzēja izmest kļūdu. Masīvā $row atrodas tikai kolonnas uploader un count ($row['uploader'] un $row['count']). Mums tur nepieciešams iedabūt access - jautājums - kā to paveikt? O, tieši tas, ka vajadzīgs Notice: Undefined index: id Notice: Undefined index: access Hint - skaties sql vaicājuma virzienā. Labots Marts 24, 2008 - jx Link to comment Share on other sites More sharing options...
kaqp Marts 24, 2008 Author Share Marts 24, 2008 (labots) kā lai es uzzinu to access netaisot jaunu vaicājumu uz mysql ? Labots Marts 24, 2008 - kaqp Link to comment Share on other sites More sharing options...
jx Marts 24, 2008 Share Marts 24, 2008 (labots) Pārveidojot esošo. Pameklē gūglē, kas ir sql vaicājums, kādas ir tā sastāvdaļas un ko katra no tām dara. Nedaudz piepalīdzēšu, skaistāk un saprotamāk noformējot vaicājumu SELECT `uploader`, count(`uploader`) as `cnt` FROM `m3_mp3` WHERE `active` = 1 GROUP BY `uploader` ORDER BY `cnt` DESC LIMIT 100 Labots Marts 24, 2008 - jx Link to comment Share on other sites More sharing options...
kaqp Marts 24, 2008 Author Share Marts 24, 2008 (labots) ( SELECT access from m3_users ) UNION ( SELECT uploader from m3_mp3 ) ORDER BY ? Labots Marts 24, 2008 - kaqp Link to comment Share on other sites More sharing options...
jx Marts 24, 2008 Share Marts 24, 2008 nē. mēģini citādi. ar LEFT JOIN. Link to comment Share on other sites More sharing options...
kaqp Marts 24, 2008 Author Share Marts 24, 2008 (labots) nu kaut kāds bezsakars , esmu baigi apjucis select m3_users.access, m3_mp3.uploaders from m3_users left join m3_mp3 on m3_mp3.id = m3_users.id Labots Marts 24, 2008 - kaqp Link to comment Share on other sites More sharing options...
jx Marts 24, 2008 Share Marts 24, 2008 (labots) OK, viss top ļoti labi. Tas jau gadrīz, gandrīz derēs. Nedaudz pārveidošu, lai iegūtu SELECT m3_mp3.uploader, count(m3_mp3.uploader) as cnt, m3_users.access FROM m3_mp3 LEFT JOIN m3_users ON m3_mp3.id = m3_users.id WHERE m3_mp3.active = 1 GROUP BY m3_mp3.uploader ORDER BY cnt DESC LIMIT 100 Ievēro, ka 2. rindiņā ir parādījies mums nepieciešamais access lauks, kā arī - tā kā tagad viena vaicājuma ietvaros lietojam 2 tabulas - katram laukam nepieciešams īpaši norādīt tā tabulu. Izmēģini un ziņo par rezultātiem. Būs jāveic vēl viens solis un tas arī viss. Labots Marts 24, 2008 - jx Link to comment Share on other sites More sharing options...
kaqp Marts 24, 2008 Author Share Marts 24, 2008 (labots) Undefined index: id Labots Marts 24, 2008 - kaqp Link to comment Share on other sites More sharing options...
jx Marts 24, 2008 Share Marts 24, 2008 Kādēļ šāda kļūda tiek parādīta? Link to comment Share on other sites More sharing options...
Recommended Posts
Izveido kontu, vai pieraksties esošajā, lai komentētu
Jums ir jābūt šī foruma biedram, lai varētu komentēt tēmas
Izveidot jaunu kontu
Piereģistrējies un izveido jaunu kontu, tas būs viegli!
Reģistrēt jaunu kontuPierakstīties
Jums jau ir konts? Pierakstieties tajā šeit!
Pierakstīties tagad!