Navigacija

Vartotojų tinkle

Prisijungusių svečių: 74
Prisijungusių narių: 0
Prisijungusių narių nėra

Registruoti nariai: 25,952
Naujausias narys: tomeem

Naujausi straipsniai

Paskutiniai nariai

tomeem 1 savaitė
Reikalas 2 savaitės
weberiz 5 savaitės
mRokass 7 savaitės
kartoonas 8 savaitės
iaescortsmap 8 savaitės
ozzWANTED 9 savaitės
grunskiz11 savaitės
Bruksnys11 savaitės
illusion12 savaitės
ordo13 savaitės
Jurgaila13 savaitės
originalcs1613 savaitės
Rytis14 savaitės
halis15 savaitės
junkus18 savaitės
morlis18 savaitės
Majakas20 savaitės
andsoft21 savaitės
picolee9022 savaitės

Informacija:


OS: Unknown
Naršyklė: Nežinoma
IP: 3.17.181.21
Naujienų: 529
Straipsnių: 235
Temų: 52,584
Postų: 522,522
Postų pask. parą: 0
Shout'ų pask. parą: 0
P.S.C. pask. parą: 0
Nuorodų kataloge: 13

Lankomumo Statistika

Peržiūrų šiandien: 22

Iš viso peržiūrų: 22948724

Prisijungti

REGISTRUOTIS
Nario vardas

Slaptažodis



Pamiršai slaptažodį?
Paprašyk naujo

Aktyvuoti save

Šaukykla

Jei norite rašyti žinutes, turite prisijungti.

ozzWANTED
2024 Sau. 17 01:01:00
Desperatiškus komentarus šaukykloje su accountu po mėnesio prasibuvimo, ištryniau. Pasaulis ir taip juodas. Įjungiam šviesą, prašviesės. šypsosi

Majakas
2023 Gru. 10 19:12:39
Negaliu patikėti jog žinutės/pranešimai visi yra nuo 2008 m akinanti šypsen

Žmogus
2023 Rugs. 7 21:09:14
O gal BloodKiller pasijungs?

Apocal
2023 Rugs. 2 18:09:23
Nu davai nuveikiam kažką akinanti šypsen. Prisijungti kada visi čia akinanti šypsen.

Apocal
2023 Rugs. 2 00:09:18
Šiaip atėjau pažiūrėti ar dar lopas nesby yra ar koks ten buvo.

Šaukyklos archyvas

Apklausa

Ar esate patenkinti lietuviško vertimo kokybe?

Taip!

Taip, bet yra ką taisyti (parašysiu komentaruose)

Ne

Norėdamas balsuoti turite prisijungti.
Archyvas
Reklama 400x60
PHP-Fusion galimybių padidinimas
Forumas | PHP-Fusion, WordPress, Shopify, PHP ir MySQL (PROGRAMAVIMAS) | Expert PHP, MySQL klausimai

Autorius: Kižas Peržiūrų: 3537      Spausdinti temą
2010 Kov. 31 18:03:57          1 žinutė iš 12
Spausdinti pranešimą
Šiandien radau toki straipsni kuris padidina jusu php fusiono puslapio resursus tai yra komentaru skaiciu,forumo pranesimu,saukiklos pranesimu ir t.t. Tai reisksia kad padidina ju atminti kad ateityje nereiktu ju trinti.Ir vat pasidares taip kaip cia raso zemiau pateikiau straipsni man nebeleidzia rasyti nei komentaru nei saukilos zinuciu t.y rodos kad butu uzpildyta viskas jei 1 zinute saukikloje istrinu tada leidzia rasyti 1 karta, o toliau vel nebeleidzia.

Stai tas straipsnis;

Pagal galimybes PHP-Fusion yra gana menka turinio valdymo sistema, tačiau ji turi tiek modifikacijų, įskiepių, dizainų, kad tas galimybes, apie kurias rašau šiame straipsnyje, padidinti tiesiog būtina.

Galbūt kai kas jau numanėte, kad bus kalbama apie vartotojų skaičių, žinučių skaičių forume, šaukyklos žinučių skaičių ir apie panašius dalykus. Taip, tai tikra tiesa. Mano tikslas yra parodyti, kaip padaryti, kad jūsų tinklalapyje galėtų užsiregistruoti ne iki 32767 narių ir parašyti ne vos 32767 žinutes forume, komentaruose, šaukykloje ar kur kitur, o bent jau iki begalybės praktiškai (o teoriškai iki 18446744073709551615). Pripažinkime, tie 32000 su kažkiek nėra tiek jau daug kaip galėtų atrodyti iš pirmo žvilgsnio. Kai jūsų portalas tampa lankomas, tuomet po kurio laiko prasideda įvairūs nulūžimai.

Kad tokių dalykų išvengtumėte, reikia krapštytis iš anksto. Tiesiog SMALLINT (5) tipą pakeiskime į BIGINT (20) UNSIGNED. Ši operacija užtikrins, kad artimiausius kelis šimtus metų (o gal ir daugiau - tikrai neskaičiavau) jūsų tinklalapis nebus užpildytas duomenimis.

Yra du būdai atlikti tokią operaciją. Pirmas būdas yra gana keblus - einate į phpMyAdmin, susirandate visas lenteles ir žiūrite, kurių laukeliai turi SMALLINT (5) tipą. Na ir jį rankiniu būdu pakeičiate kiekviename laukelyje, kiekvienoje lentelėje į BIGINT (20). Mazochisto džiaugsmas...

Bet yra ir daug paprastesnis būdas sutvarkyti šią problemą. Tiesiog pasinaudojate mano kodu ir viskas! Štai jis:

<?php

$database_name = '';
$r = dbquery("SHOW TABLES FROM $database_name");
$query = '';
while ($d = mysql_fetch_row($r)) {
   $table_name = $d[0];
   $result = dbquery("SHOW FIELDS FROM $table_name");
   $query .= "ALTER TABLE $table_name ";
   while ($d1 = mysql_fetch_row($result)) {
      if (eregi('smallint',$d1[1])) $query .= "MODIFY ".$d1[0]." BIGINT (20) UNSIGNED NOT NULL, ";
   }
   $query = substr($query,0,strlen($query)-2);
   $query .= ";\r\n";
}

$lines = explode("\r\n",$query);
for ($i = 0; $i < count($lines); $i++) {
   $line = trim($lines[$i]);
   if (eregi('MODIFY',$line)) $result = dbquery($line);
}

?>




Atkreipkite dėmesį į šią eilutę: $database_name = '';. Joje būtina nurodyti savo duomenų bazės pavadinimą. Pavyzdžiui, jeigu jūsų duomenų bazės pavadinimas yra blabla123, tai eilutę $database_name = ''; keičiate į $database_name = 'blabla123';. Jeigu duomenų bazė vadinasi bulbul123, tada $database_name = ''; keičiate į $database_name = 'bulbul123';. Manau, esmę supratote.

Dabar įdėmiai paskaitykite apie kodo paleidimą. Jį galite paleisti dviem būdais: per pridėtinius puslapius ir sukurdami naują failą. Kaip paleisti per pridėtinius puslapius, maždaug aišku: einate į administravimo pultą, spaudžiate "Pridėtiniai puslapiai", nurodote puslapio pavadinimą, į didesnį teksto lauką nukopijuojate mano kodą ir spaudžiate "Peržiūra" mygtuką. Antrasis būdas yra kiek labiau komplikuotas. Norėdami paleisti kodą per failą, pirmiausia turite atlikti šį veiksmą: po <?php eilute prirašyti include "maincore.php";. Juk turi būti sukurtas MySQL prisijungimas ir aprašytos PHP-Fusion MySQL duomenų bazės valdymo funkcijos. Tuomet naująjį kodą išsaugote php formatu bet kokiu pavadinimu, pavyzdžiui: as_ne_mazochistas.php. Sukurtą failą talpinate per FTP naršyklę arba kitokią tinklalapio bylų tvarkymo priemonę. Svarbiausia, kad įkeliamas failas būtų ten pat, kur yra ir maincore.php. Kai įkelsite failą į tinklalapį, tuomet jį atsidarykite per naršyklę, pavyzdžiui: http://manosaitas.blabla.nene.te...istas.php. Atsidarote failą ir VISKAS! Štai ir jūsų PHP-Fusion tinklalapio galimybės MySQL atžvilgiu smarkiai padidintos daugybę kartų (maždaug 563 trilijonus kartų).

Tikiuosi, viskas, ką parašiau, jums buvo aišku ir suprantama. Jeigu kils neaiškumų, klauskite komentaruose. Mėginsiu jums į užduotus klausimus atsakyti.

Tai vat dabar klausimas kaip man atgal sugrazinti SMALLINT (5) reiksme kad eitu vel rasyti komentarus ir t.t.??
Mano fusiono versija 6


2010 Kov. 31 19:03:02          2 žinutė iš 12
Spausdinti pranešimą
Visų pirma. Jeigu pasidarei iš SMALLINT(5) -> INT(11) [unsigned]. Tai koks skirtumas ar:

0000000000fffffffffe
ar
__________fffffffffe

Ir čia ne galimybių didinimas, o neprotavimas...

Pvz. user_groups negali būti SMALLINT(3), nes user_level jau yra 101-103.
O naudoti ilgesnius nei reikia formatus, tai nebent serveris per galingas ir nori jį labiau apkrauti(stupid), arba vietos FTP per daug, t.y. nori kad duom. bazė didesnė būtų, ir paieška ilgiau truktų.

Gal tada praplėskite TEXT į LONGBLOB(4G) ???

BR#1, Most Wanted
2010 Kov. 31 19:03:34          3 žinutė iš 12
Spausdinti pranešimą
Bet dabar man is po sito nebeleidzia rasyti nei komentaru nei saukikloje pranesimu tarsi vieta visa butu uzimta?spaudi pvz rasyti ir nieko neatsiranda tarsi bereikalingas puslaio refreh'as.ka daryti?kaip atstatyti?
2010 Lie. 12 14:07:56          4 žinutė iš 12
Spausdinti pranešimą
Gal kas nors žinot, kaip galima padidinti duombazės galimybes taip, kad nenukentėtų svetainė? Ypatingai tai liečia forumo pranešimus ir komentarus.

2010 Lie. 12 15:07:18          5 žinutė iš 12
Spausdinti pranešimą
Smallint(5) keisti į mediumint(8) - ir viskas bus okmerkia akį

BR#1, Most Wanted
2010 Lie. 12 15:07:15          6 žinutė iš 12
Spausdinti pranešimą
http://img138.imageshack.us/img1...ejiki0.jpg - kad nereikėtu daugiau klausinėti.

2010 Lie. 12 16:07:20          7 žinutė iš 12
Spausdinti pranešimą
Kadangi nenoriu eksperimentuoti tad pirmiausiai dar noriu paklausti. Gal jau jums yra taip buvę ir žinot priežastį:

PHP fusion v6. Puslapio failai nebuvo redaguoti, mysql taip pat, bet nei iš šio nei iš to pradėjo neberodyti naujai sukurtų forumo pranešimų. Sistema rodo, kad yra naujas komentaras, bet nuėjus į postą tuštuma. Projektui jau 3 metai, forumo postų virš 50 000, naujienų komentarų dar daugiau.

Jūsų nuomone problema dėl mysql dydžio išsieikvojimo ar kita priežastis? Laukiu patarimų.

2010 Lie. 12 16:07:25          8 žinutė iš 12
Spausdinti pranešimą
Dėl to, kad post_id, thread_id, user_id ir panašiai reikia praplėsti. šypsosi

2010 Lie. 12 16:07:26          9 žinutė iš 12
Spausdinti pranešimą
Išmėginau šį kodą, kolkas regis viskas tvarkoje.


Redagavo sporto 2010 Lie. 12 17:07:05
2010 Lie. 12 17:07:47          10 žinutė iš 12
Spausdinti pranešimą
efektas buvo trumpalaikis, keli nauji komentarai išliko, o poto ir vėl tas pats. Ar bus dar nuomonių?
2010 Lie. 12 20:07:06          11 žinutė iš 12
Spausdinti pranešimą
dabar isvis viskas uzsibugino, neina nei forumo pildyt, nei komentaru, nei saukyklos. Kas gali issprest sia problema parasykit man i PM, uzmokesiu.
2010 Lie. 12 20:07:42          12 žinutė iš 12
Spausdinti pranešimą
Yra mygtukas "Redaguoti" drovus

Peršokti į forumą: