Temos pavadinimas: WordPress, Shopify ir PHPFusion programuotojų bendruomenė :: DB nuskaitimas

Parašė bad_user· 2008 Kov. 8 21:03:54
#1

Kaip padaryti kad papildomai prie to pačio user'io nuskaitytu visa prefixas_users turini?

Kodas prie kurio reikia prilibdyti:

$result = dbquery(
   "SELECT tf.*, tt.*, tu.user_id,user_name, MAX(tp.post_id) as last_id, COUNT(tp.post_id) as count_posts FROM ".$db_prefix."forums tf
   INNER JOIN ".$db_prefix."threads tt USING(forum_id)
   INNER JOIN ".$db_prefix."posts tp USING(thread_id)
   INNER JOIN ".$db_prefix."users tu ON tt.thread_lastuser=tu.user_id
   WHERE ".groupaccess('forum_access')." GROUP BY thread_id ORDER BY thread_lastpost DESC LIMIT 0,".$settings['numofthreads']
)



Parašė ozzWANTED· 2008 Kov. 8 21:03:46
#2

Dalį:
tu.user_id,user_name,

Keisk į:
tu.*,

Tačiau to daryti tikrai nerekomenduočiau, jei nėra absoliučiai būtinai, dėl šių priežasčių:
1.Jeigu neapibrėžti konkretūs laukeliai, užklausa neoptimizuota, serveris labiau apkraunamas, saitas dirba lėčiau.
2.Jeigu laukeliai dubliuosis su kitos naudojamos lentelės laukelių pavadinimais, gausi error'us.

Tavo vietoje tiesiog users užklausos dalį papildyčiau trūkstamais laukeliais, surašant juos po kablelio.

Redagavo ozzWANTED· 2008 Kov. 8 21:03:03

Parašė bad_user· 2008 Kov. 8 21:03:24
#3

Man tiesiog papildomai reikia nuskaityti user_level :)

Parašė ozzWANTED· 2008 Kov. 8 21:03:04
#4

Nu tai tiesiog keiti tuomet dalį:
tu.user_id,user_name,

į:
tu.user_id,user_name,user_level,

Ir viskas.

Redagavo ozzWANTED· 2008 Kov. 8 21:03:19

Parašė bad_user· 2008 Kov. 8 21:03:54
#5

Ačiu... :)

Parašė MAnjack· 2008 Kov. 8 21:03:25
#6

Dar ir man šita tema pravertė :) gavau reikalingos informacijos apie optimizavimą :)

Parašė bad_user· 2008 Geg. 2 13:05:31
#7

Gal kas žino kas šiame kode negerai:

if ($userdata['user_groups'] == 5) {
echo "<td class='tbl'><input type='text' name='user_email' value='".$userdata['user_email']."' maxlength='100' class='textbox' style='width:200px;'></td>";
} else {
echo "<td class='tbl'>".$userdata['user_email']."</td>";
}




Neveikia tai ką turi daryti :)

Parašė MAnjack· 2008 Geg. 2 14:05:25
#8

Grupės tikrinimas turi būt kitoks
su checkgroup kažkaip :)

Parašė bad_user· 2008 Geg. 2 14:05:35
#9

Jei nesunku gal gali parašyti kodą? :)

Parašė Enzo· 2008 Geg. 2 14:05:03
#10

Aš naudoju pas save tokį

if (substr($data['user_groups'], 1) == "4") {
echo"Taip";
}



Redagavo Enzo· 2008 Geg. 2 14:05:11

Parašė bad_user· 2008 Geg. 2 15:05:46
#11

Neveikia žinok. :( Kaip supratau id tai keisti reikia čia: "4" :)

Parašė Enzo· 2008 Geg. 2 15:05:11
#12

SoNG parašė:
Neveikia žinok. :( Kaip supratau id tai keisti reikia čia: "4" :)


Jo 4, hmm, keista, kad neveikia. Gal
getusergroups(4)




tiktų?

Parašė bad_user· 2008 Geg. 2 15:05:44
#13

Reikia kažkaip padaryti if'a su grupės id 5 :)

Redagavo bad_user· 2008 Geg. 2 15:05:55

Parašė MAnjack· 2008 Geg. 2 15:05:47
#14

bandyk taip:
if(checkgroup("4")) {

Parašė bad_user· 2008 Geg. 2 15:05:06
#15

Na va jau galiu redaguoti tik va neveikia else :)

Parašė Enzo· 2008 Geg. 2 15:05:15
#16

SoNG parašė:
Na va jau galiu redaguoti tik va neveikia else :)


Nerodo nieko?

Parašė MAnjack· 2008 Geg. 2 15:05:24
#17

rašyk elseif(!checkgroup("4")) {

Redagavo Enzo· 2008 Geg. 2 15:05:07

Parašė bad_user· 2008 Geg. 2 15:05:12
#18

Neveikia visiškai if'as. Ar tu grupėje ar ne gali editinti e-mail :D

Parašė Enzo· 2008 Geg. 2 15:05:17
#19

Gali būt, neveikia, nes esi ne vienoj grupėj, taip ir man yra, jei esi ne vienoj grupėj, tai neveikia, bent su atvaizdavimu

Parašė ozzWANTED· 2008 Geg. 3 21:05:41
#20

SoNG parašė:
Gal kas žino kas šiame kode negerai:


if (checkgroup("5")) {
echo "<td class='tbl'><input type='text' name='user_email' value='".$userdata['user_email']."' maxlength='100' class='textbox' style='width:200px;'></td>";
} else {
echo "<td class='tbl'>".$userdata['user_email']."</td>";
}



Redagavo bad_user· 2008 Geg. 3 21:05:31

Parašė MAnjack· 2008 Geg. 3 21:05:51
#21

Tai aš jam tokį ir daviau :]