abonnement Unibet Coolblue Bitvavo
pi_60047127
quote:
Op donderdag 10 juli 2008 22:25 schreef SuperRembo het volgende:

En Light, waarom is je usericon een jpeg?
Gewoon, ruim binnen de 10240 bytes en nooit zin gehad om het gevonden plaatje aan te passen.
  vrijdag 11 juli 2008 @ 22:18:15 #77
107951 JortK
Immer kwaliteitsposts
pi_60055605
quote:
Op vrijdag 11 juli 2008 18:23 schreef SuperRembo het volgende:

[..]

Dat is logisch. Jpeg is lossy, png is lossless. Png en gif zijn geschikt voor plaatjes met weinig verschillende kleuren. Jpeg is geschikt voor plaatjes met veel verschillende kleuren waarbij het niet erg is als er kleine foutjes geintroduceerd worden.
Wat raad je me aan dan? hoe kan ik toch zorgen dat deze afbeeldingen kleiner worden?
quote:
Op vrijdag 11 juli 2008 18:42 schreef slakkie het volgende:

[..]

Gewoon die replace into gebruiken... Maar hoe ziet je code eruit, want ik snap niet echt wat er fout kan gaan met deze queries.

Never mind, ben erachter wat je fout mogelijk kan zijn:
[ code verwijderd ]

Maw, check je table ff, denk dat daar de fout in zit, en niet in je php/mysql code in je script.
Helaas, het heeft niets te maken met autoincrement, er staan namelijk al meer dan 40.000 ip adressen in deze tabel waarbij dit probleem af en toe voorkomt

Waarschijnlijk doordat het script 2x op bijna dezelfde tijd geladen wordt oid?
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_60055723
quote:
Op zaterdag 12 juli 2008 09:33 schreef Chandler het volgende:

[..]

Wat raad je me aan dan? hoe kan ik toch zorgen dat deze afbeeldingen kleiner worden?
[..]

Helaas, het heeft niets te maken met autoincrement, er staan namelijk al meer dan 40.000 ip adressen in deze tabel waarbij dit probleem af en toe voorkomt

Waarschijnlijk doordat het script 2x op bijna dezelfde tijd geladen wordt oid?
Check je indexen eens....
pi_60055858
quote:
Op zaterdag 12 juli 2008 09:33 schreef Chandler het volgende:

[..]

Wat raad je me aan dan? hoe kan ik toch zorgen dat deze afbeeldingen kleiner worden?
Wat voor plaatje is het dan, en moet het wel kleiner dan 50 kb? Je kunt ook GIF proberen, of de kwaliteit wat naar beneden zetten ofzo.
pi_60056134


Kwam ik net ergens tegen leuk hoor

Mijn index is

1
2
3
4
5
6
7
CREATE TABLE `ip` (
  `id` int(11) NOT NULL auto_increment,
  `ip` varchar(15) NOT NULL,
  `hostname` varchar(128) NOT NULL,
  PRIMARY KEY  (`id`),
  UNIQUE KEY `ip_2` (`ip`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=18371 


zoals je ziet alleen een index op IP en verder nix dus snap ik niet wat ik fout doe!
quote:
Op zaterdag 12 juli 2008 10:08 schreef Light het volgende:
Wat voor plaatje is het dan, en moet het wel kleiner dan 50 kb? Je kunt ook GIF proberen, of de kwaliteit wat naar beneden zetten ofzo.
Ik had de compressie al op 9 gezet maar dat werkte ook niet echt
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_60056473
Net even een compressie scriptje geschreven, valt me mee qua comprimeren (3e en 4e test)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
<?php
$img 
"image.jpg";
$img_new "image.png";


// first test
$im imagecreatefromJPEG($img);

$im_new imagecreatetruecolor(imagesx($im), imagesy($im));

imagecopyresampled $im_new
                     
$im
                     
0
                     
0
                     
0
                     
0
                     
imagesx($im), 
                     
imagesy($im), 
                     
imagesx($im), 
                     
imagesy($im));

imagePng($im_new$img_new9);

echo 
'Org:' filesize($img) . " - new: " filesize($img_new) . '<br />';
echo 
'<img src="' $img_new '"><br />';

unset(
$im);
unset(
$im_new);

// second test

$im imagecreatefromJPEG($img);
imagePng($im$img_new9);

echo 
'Org:' filesize($img) . " - new: " filesize($img_new) . '<br />';
echo 
'<img src="' $img_new '"><br />';

unset(
$im);
unset(
$im_new);

// third test

$im imagecreatefromJPEG($img);

$im_new imagecreate(imagesx($im), imagesy($im));

imagecopyresampled $im_new
                     
$im
                     
0
                     
0
                     
0
                     
0
                     
imagesx($im), 
                     
imagesy($im), 
                     
imagesx($im), 
                     
imagesy($im));

imagePng($im_new$img_new9);

echo 
'Org:' filesize($img) . " - new: " filesize($img_new) . '<br />';
echo 
'<img src="' $img_new '"><br />';

unset(
$im);
unset(
$im_new);


// 4th test

// third test

$im imagecreatefromJPEG($img);

$im_new imagecreate(imagesx($im), imagesy($im));

imagecopy $im_new
                     
$im
                     
0
                     
0
                     
0
                     
0
                     
imagesx($im), 
                     
imagesy($im));

imagePng($im_new$img_new9);

echo 
'Org:' filesize($img) . " - new: " filesize($img_new) . '<br />';
echo 
'<img src="' $img_new '"><br />';

unset(
$im);
unset(
$im_new);
?>


Org:28747 - new: 109391

Org:28747 - new: 109391

Org:28747 - new: 31038

Org:28747 - new: 31038
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_60056498
quote:
Op zaterdag 12 juli 2008 09:33 schreef Chandler het volgende:
Helaas, het heeft niets te maken met autoincrement, er staan namelijk al meer dan 40.000 ip adressen in deze tabel waarbij dit probleem af en toe voorkomt

Waarschijnlijk doordat het script 2x op bijna dezelfde tijd geladen wordt oid?
Dat laatste zal het wel zijn dan maar wij kunnen niet zien waar en wanneer dat script aangeroepen wordt.
pi_60057043
quote:
Op zaterdag 12 juli 2008 11:12 schreef Chandler het volgende:
Net even een compressie scriptje geschreven, valt me mee qua comprimeren (3e en 4e test)
[edit]
Wat wil je hier nou mee testen/aantonen? Png en jpeg hebben ieder hun eigen toepassing. Waarom moet het per see png worden?
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
pi_60058048
quote:
Op zaterdag 12 juli 2008 11:14 schreef Farenji het volgende:
Dat laatste zal het wel zijn dan maar wij kunnen niet zien waar en wanneer dat script aangeroepen wordt.
Maar iemand nog een duidelijke tutoriaal over on replace?
quote:
Op zaterdag 12 juli 2008 12:03 schreef SuperRembo het volgende:
[edit]
Wat wil je hier nou mee testen/aantonen? Png en jpeg hebben ieder hun eigen toepassing. Waarom moet het per see png worden?
Omdat ik graag binnen het systeem 1 bestandstype support. Of is dit onzin?
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_60058292
quote:
Op zaterdag 12 juli 2008 13:19 schreef Chandler het volgende:

[..]

Maar iemand nog een duidelijke tutoriaal over on replace?
Je zou eens hier of hier kunnen kijken.
quote:
Omdat ik graag binnen het systeem 1 bestandstype support. Of is dit onzin?
Het voegt niets toe in vergelijking met het ondersteunen van gif/jpg/png.
pi_60059467
Ik heb even de insert gelezen maar wil eingelijk bij duplicate niets doen... helaas ben ik denk ik verplicht om een veld aan te passen oid

Liefst zou ik gewoon bij een ON DUPLICATE niets doen, maar dan krijg ik ook niets terug met LAST_INSERT_ID()

Anyone suggesties?
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_60060487
quote:
Op zaterdag 12 juli 2008 14:59 schreef Chandler het volgende:
Ik heb even de insert gelezen maar wil eingelijk bij duplicate niets doen... helaas ben ik denk ik verplicht om een veld aan te passen oid

Liefst zou ik gewoon bij een ON DUPLICATE niets doen, maar dan krijg ik ook niets terug met LAST_INSERT_ID()

Anyone suggesties?
Ja, tijd voor een andere aanpak.

Eerst met INSERT IGNORE de gegevens invoeren. Een dubbele rij wordt genegeerd door die IGNORE. Dan ga je met ROW_COUNT() of mysql_affected_rows() ofzo uitzoeken of er 0 of 1 rijen zijn toegevoegd. Als 0, dan heb je een SELECT query nodig om de id te achterhalen. Als 1 dan kun je dat met LAST_INSERT_ID() of mysql_insert_id() dat id uitzoeken.

Of het kan nog anders. Eerst met INSERT IGNORE een rij toevoegen. Daarna weet je zeker dat de waarde in de database staat en kun je de id er met een SELECT weer uithalen.
pi_60065489
quote:
Op zaterdag 12 juli 2008 14:59 schreef Chandler het volgende:
Ik heb even de insert gelezen maar wil eingelijk bij duplicate niets doen... helaas ben ik denk ik verplicht om een veld aan te passen oid

Liefst zou ik gewoon bij een ON DUPLICATE niets doen, maar dan krijg ik ook niets terug met LAST_INSERT_ID()

Anyone suggesties?
Kan je on duplicate niet de bestaande rij updaten met dezelfde waarde?
Dan verandert er niks maar heb je wel hetzelfde resultaat?
pi_60078044
@Chandler:

Waarom gebruik je het ip adres zelf niet als primary key, aangezien je /32 opslaat (1 ip adres), welke dus eigenlijk al uniek is.

Je kan dan gewoon REPLACE INTO iptables (ip, hostname, rest) VALUES ( '127.0.0.1', 'localhost', 'overige'); uitvoeren.

Je kan trouwens ook dit doen:

INSERT INTO ... ON DUPLICATE KEY UPDATE, zie hier: http://dev.mysql.com/doc/refman/5.0/en/insert-on-duplicate.html

Tevens wil ik ook even vermelden dat niet alle IP's een hostname zullen hebben.. Je kan mogelijk problemen daarmee krijgen als ISP's even niet opletten en een range niet definieren in hun zonefile (aangezien je NOT NULL hebt gedefinieerd op dat veld).

[ Bericht 19% gewijzigd door slakkie op 13-07-2008 17:18:03 ]
pi_60092534
Ik zal eens wat uitprinten over ON DUPLICATE KEY en het eens rustig doornemen.

Indien een IP geen hostname heeft staat daar gewoon het IP adres!

ik kan ook inet_atom gebruiken om IP adressen op te slaan, zit erg te twijfelen of ik die niet beter kan gebruiken ipv varchar!
The people who lost my respect will never get a capital letter for their name again.
Like trump...
pi_60092607
Heb nu SQL server 2005 draaien en nu wil het dat ik met acces gegevens daar vanaf wil halen maar acces kan SQL gewoon niet vinden. Ik gebruik Office 2003 met Windows XP.
Het AT maakt meer kapot dan je lief is
pi_60093395
Ik heb net even een opzetje gemaakt met 25000 ip adressen

met varchar 16 heb ik 2,5MB aan data
met unsigned int (10) heb ik 1,6MB aan data

invoeren met inet_atom en uitlezen met inet_ntoa

Helaas kon ik niet een groot verschil met uitlezen zien daarvoor had ik nog te weinig ip adressen.
The people who lost my respect will never get a capital letter for their name again.
Like trump...
  maandag 14 juli 2008 @ 12:30:32 #94
85514 ralfie
!Yvan eht nioj
pi_60093697
quote:
Op maandag 14 juli 2008 12:16 schreef Chandler het volgende:
Ik heb net even een opzetje gemaakt met 25000 ip adressen

met varchar 16 heb ik 2,5MB aan data
met unsigned int (10) heb ik 1,6MB aan data

invoeren met inet_atom en uitlezen met inet_ntoa

Helaas kon ik niet een groot verschil met uitlezen zien daarvoor had ik nog te weinig ip adressen.
en als je nou vier TINYINT's doet
pi_60094279
volgens mij blijft het dan net zo groot als het niet groter wordt
The people who lost my respect will never get a capital letter for their name again.
Like trump...
  maandag 14 juli 2008 @ 13:52:41 #96
85514 ralfie
!Yvan eht nioj
pi_60095701
wacht, int is 4 bits, nevermind
pi_60101023
quote:
Op maandag 14 juli 2008 13:52 schreef ralfie het volgende:
wacht, int is 4 bitsbytes, nevermind
Wil iedereen die in telekinese gelooft nu mijn hand op steken?
| Foto's van toen en nu | Icons | Whatpulse keyboard | .NET developer? |
  maandag 14 juli 2008 @ 18:38:43 #98
85514 ralfie
!Yvan eht nioj
pi_60102587
quote:
Op maandag 14 juli 2008 17:20 schreef SuperRembo het volgende:

[..]


wacht, int is 4 bytes, nevermind
pi_60103657
Een numerieke index is altijd veel beter, zelfs 4 tinyints is nog beter dan varchar, maar een INT is echt het beste. Met een INT kolom heb je met 4 bytes unsigned precies genoeg mogelijkheden voor alle mogelijke IPv4 adressen, niet meer, niet minder, optimaler kan niet. En een index op een numerieke kolom van 4 bytes is natuurlijk veel kleiner en sneller dan op een string van max 15 karakters, da's bijna 4 keer zoveel!! Bovendien is het heel makkelijk rekenen en vergelijken met ips als INTs, ontzettend veel makkelijker en efficienter dan met strings. Hoe meer data je krijg, hoe inefficienter een varchar kolom wordt tov de int kolom. Met 25000 rows ga je dat nog niet echt merken maar op een gegeven moment echt wel, in opslagruimte en dus ook geheugengebruik, maar ook in processorbelasting.
  maandag 14 juli 2008 @ 23:03:52 #100
85514 ralfie
!Yvan eht nioj
pi_60109268
1
2
3
4
SELECT tpc.topic_id, tpc.topic_poster AS author, tpc.topic_first_poster_name, tpc.topic_replies, pf.categories, pf.raters, pf.rating, pf.changed
FROM phpbb_topics tpc, phpbb_posts p, portfolios pf
WHERE tpc.topic_id=pf.id AND p.post_id = tpc.topic_first_post_id
ORDER BY tpc.topic_first_poster_name ASC, pf.rating DESC LIMIT 50


ok, even snel. Het gaat op mysql 5.0 ( 5.0.51a-community )

volgens mysql.com is ORDER BY {string} case-insensitive. Ondanks dat geeft bovenstaande query bij deze mysql toch echt case-sensitive gesorteerde meuk. What gives? Iemand idee waarom?

Terwijl ik dit typ bedenk ik mij dat in phpbb3 (wat ik aan het modden ben) de waarde die ik ORDER als BLOB opslaat. Kan dit de reden zijn? Iets aan te doen (behalve die tabel aanpassen, dat is geen optie)? En zo niet, is er een andere manier van oplossen behalve ORDER BY CAST(tpc.topic_first_poster_name AS CHAR) ? (of is performance impact daarbij nihil?)

[ Bericht 5% gewijzigd door ralfie op 14-07-2008 23:17:18 ]
abonnement Unibet Coolblue Bitvavo
Forum Opties
Forumhop:
Hop naar:
(afkorting, bv 'KLB')