Mja, maar dat lijkt me een uitzondering?quote:Op dinsdag 1 juli 2008 19:39 schreef HuHu het volgende:
Je kunt best live development doen op het moment dat het product toch nog niet gebruikt wordt. Zo heb ik pas een site "live" gemaakt, aangezien er toch nog geen bezoekers kwamen. En nu, in de beginfase, met 10 bezoekers per dag kan ik ook nog best live dingen fixen. Zodra het echt druk wordt kan dat niet meer natuurlijk, maar tot die tijd is er geen probleem.
Je kunt een site ook semi-live zetten, zoals ik dat altijd doe. Op mijn eigen server een subdomein aanmaken zodat de klant ten alle tijden kan checken hoe het staat met de ontwikkeling. Of op de server van de klant onder een bepaald subdomein. Het kan allemaal. Maar direct live op de plek waar het resultaat dient te komen, lijkt me idd een slecht plan.quote:Op dinsdag 1 juli 2008 20:28 schreef Xcalibur het volgende:
De laatste post:
[..]
Mja, maar dat lijkt me een uitzondering?
En waarom zou je dat dan doen, als je voor de rest van je sites wel een development (lokaal) en testomgeving hebt?
Overigens wordt het op die manier ook wel hoogst onduidelijk wanneer de site nou "live" is, en wanneer jij dus klaar bent met je werk en wat er meerwerk is.... Live ontwikkelen lijkt me eigenlijk in alle opzichten een slecht idee
quote:
Ben met xdebug icm Kcachegrind aan de gang gegaan:quote:Op dinsdag 1 juli 2008 21:10 schreef slakkie het volgende:
Vraagje, iemand hier die een goede HTML parser kent? Ik gebruik momenteel simple_html_dom.php hiervoor, maar ik heb last van een memory issue en ik wil even uitsluiten dat het door deze parser komt.
Uiteraard zijn ervaringen over PHP code profilers en debuggers (open source, linux) meer dan welkom.
quote:Hallo,
Ik vraag me af of het volgende mogelijk is.
Ik heb een flash/php applicatie gemaakt. en dit draait op een pc die door mij uitgegeven wordt. dus waar ik in principe alles op kan aanpassen/installeren.
Nu heb ik 1 hoofdflash movie die bestaat uit losse 'kleine' flash movies die met elkaar communiceren. eerst was het mijn bedoeling dat ik de losse flash movies op de server wel ging updaten indien mogelijk. maar flash laat dit dus niet toe.
Dus nu heb ik een soort van update script nodig. die de flash bestanden kopieert naar de HD van de pc. als het even kan moet dit 'onzichtbaar' gebeuren.
met .NET weet ik dat dit kan. (httppost oid?) nu dus de vraag. kan dit met PHP ook?
Alvast bedankt!
Koppeltabellen zijn redelijk gemeengoed in (genormaliseerde) databasesquote:Op donderdag 3 juli 2008 00:34 schreef Wouser het volgende:
Hmmm hmmmmmmmmmmm weet je wat ik moet hebben een tabel met een artikel-id en een tag-id![]()
bedanktwas er zelf niet opgekomen
Nou, zelf wat input en moeite erin stoppen zou gewaardeerd worden.quote:Op donderdag 3 juli 2008 09:36 schreef insomaniak het volgende:
Is dit ook het goede topic om scriptjes aan te vragen??
Echt als ik zou kunnen, zou ik meteen aan de slag gaan...quote:Op donderdag 3 juli 2008 09:56 schreef Scorpie het volgende:
[..]
Nou, zelf wat input en moeite erin stoppen zou gewaardeerd worden.
Helaas, het vragen van dit soort services, dat mag nietquote:Op donderdag 3 juli 2008 10:02 schreef insomaniak het volgende:
[..]
Echt als ik zou kunnen, zou ik meteen aan de slag gaan...![]()
Helaas heb ik er zelf echt geen bal verstand van maar zou wel iets willen wat gebruiksklaar is.
Ik ben ook bereid ervoor te betalen
Volgens mij is een primary key al een index op zichzelf, maar kan me vergissen.quote:Op donderdag 3 juli 2008 10:29 schreef Chandler het volgende:
Kleine vraag m.b.t instellen van index van tabellen.
Ik heb een tabel met de volgende gegevens.
id - auto incr
datum - date
tekst - varchar 128
hits - int
nu staat ID op primary, maar wil eingeljk ook het ID geindexeerd hebben, als ik ID als index neerzet krijg ik de melding van PhpMyAdmin dat dit eingelijk niet mag.
Hoe los ik dit op? moet ik id van primary afhalen en er een index van maken of hoe lossen jullie dit op?
Issue is fixed, circular references geven de garbage collection van PHP problemen (memory wordt nooit vrijgemaakt indien je een circular reference gebruikt). Dat moet je oplossen door unset() te gebruiken.... En voorlopig gaan ze deze bug in PHP ook nog niet oplossen.quote:Op woensdag 2 juli 2008 12:37 schreef slacker_nl het volgende:
Ben met xdebug icm Kcachegrind aan de gang gegaan:
De zut die voor problemen zorgt:
http://www.euronet.nl/users/wesleys/wic/WicMassgate.png
Voor zover ik kan zien is het de dom_parser die inderdaad voor problemen zorgt. Hoewel mijn functies veel "kosten" zie je dat de kosten vooral terecht komen in de bewuste parser.. Wat ik ertegen kan doen is een andere vraag...
Dit is overigens de bewuste parser: http://simplehtmldom.sourceforge.net/
1 2 | RewriteRule ^rewrite/(.*)/(.*)/ rewrite.php?id=$1&pid=$2 |
1 2 3 | echo $_GET['id']; ?> |
Verder staat AllowOverride ook goed:quote:Loaded Modules core mod_log_config mod_logio prefork http_core mod_so mod_alias mod_auth_basic mod_authn_file mod_authz_default mod_authz_groupfile mod_authz_host mod_authz_user mod_autoindex mod_cgi mod_dir mod_env mod_mime mod_negotiation mod_php5 mod_rewrite mod_setenvif mod_status
quote:<Directory />
Options FollowSymLinks
AllowOverride All
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
# This directive allows us to have apache2's default start page
# in /apache2-default/, but still have / go to the right place
RedirectMatch ^/$ /apache2-default/
</Directory>
Welke slashes? En waarom?quote:Op donderdag 3 juli 2008 14:09 schreef Xcalibur het volgende:
@Chandler: de primary key is inderdaad een index
@Saban: ik denk dat je de slashes moet escapen
Probeer het eens met ^/rewrite/(.+)/(.+)/quote:Op donderdag 3 juli 2008 13:59 schreef saban het volgende:
Ik heb een probleem met mod_rewrite (wilde hier heen apart topic voor openen).
De bestanden:
.htaccess
[ code verwijderd ]
In Perl is dit "redelijk" makkelijk te doen.quote:Op donderdag 3 juli 2008 13:44 schreef ursel het volgende:
Zijn er misschien nog andere suggesties om via een automatisch process een excel file te converteren naar CSV, waarbij de format zoals ze in excel zijn ingevoerd bewaard blijven?
Probleem is al opgelost;quote:Op donderdag 3 juli 2008 15:21 schreef slakkie het volgende:
[..]
Probeer het eens met ^/rewrite/(.+)/(.+)/
En ik kan het niet vaak genoeg herhalen, enable je RewriteLog en zet je loglevel lekker hoog, dan zie je precies waar het fout gaat in je rewrite
1 2 3 4 | FROM blog, tagcloud INNER JOIN blogtag ON tagcloud.id = blogtag.tag_id |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | ( [0] => Array ( [title] => Test Title [subtitle] => Test Subtitle [date] => 2008-07-03 [content] => This is a test message for my system. [name] => Internet ) [1] => Array ( [title] => Test Title [subtitle] => Test Subtitle [date] => 2008-07-03 [content] => This is a test message for my system. [name] => FOK ) ) |
1 2 3 4 5 6 7 8 9 10 11 12 | ( [title] => Test Title [subtitle] => Test Subtitle [date] => 2008-07-03 [content] => This is a test message for my system. [tag] => array ( [0] => Internet [1] => FOK ) ) |
dat zul je zelf in php moeten gaan regelen, mysql kan veel maar arrays in arrays teruggeven gaat gewoonweg niet.quote:Op donderdag 3 juli 2008 20:19 schreef Wouser het volgende:
Nou ik ben dus verder gegaan met mijn tagcloud en heb nu zeg maar dus 3 tabellen.
1 tabel voor mijn blogs. ID, titel, subtitel, datum, content.
1 tabel voor mijn tags. ID, naam.
1 tabel voor de relatie tussen blogs en tags heb ik blogtag genoemd en bevat blog_id en tag_id.
Nu wou ik dus een query maken waarbij ik dus gelijk mijn blog en tag kan selecteren nu was ikzelf op dit gekomen...
[ code verwijderd ]
en ik krijg dan als resultaat...
[ code verwijderd ]
Alleen wou ik dit eigenlijk niet hebben had me eigenlijk liever zoiets hebben...
[ code verwijderd ]
Iemand die me wilt helpen?
ps. en volgens mij krijg ik wanneer ik meer blogs ga toevoegen ook straks problemen met de tags...
1 2 3 4 5 6 7 8 9 | ( [title] => Test Title [subtitle] => Test Subtitle [date] => 2008-07-03 [content] => This is a test message for my system. [tag1] => Internet [tag2] => FOK ) |
Nja. Tenzij je een harde beperking hebt op het aantal tags per blog (bijv. 'nooit meer dan 3 tags') zou ik het je sterk afraden. Je moet je nl. realiseren dat elke Tag1, Tag2, etc. een aparte kolom wordt. Voor de meeste blogs zul je de helft van de kolommen niet gebruiken, en als je een blog hebt met toevallig een tag meer, dan past 'ie niet in de resultset. Slecht plan.quote:Op donderdag 3 juli 2008 20:38 schreef Wouser het volgende:
Ok dan weet ik dat maar is bijvoorbeeld zoiets:
[ code verwijderd ]
dan ook niet mogelijk?
Niet met alleen MySQL. Het kan wel als je vooraf precies weet hoeveel tags een item heeft, maar dan heb je geen nette oplossing.quote:Op donderdag 3 juli 2008 20:38 schreef Wouser het volgende:
Ok dan weet ik dat maar is bijvoorbeeld zoiets:
[ code verwijderd ]
dan ook niet mogelijk?
Trouwens, nog even een wat meer algemere opmerking over wat mogelijk is en wat niet: onthoud dat voor zowel een tabel als een resultset (= het resultaat van een SQL query) het volgende geldt: Het kan een variabel aantal rijen hebben, maar het heeft altijd een vast aantal kolommen. Dit is ook logisch als je bedenkt dat rijen geen naam hebben, maar kolommen wel.quote:Op donderdag 3 juli 2008 20:38 schreef Wouser het volgende:
Ok dan weet ik dat maar is bijvoorbeeld zoiets:
[ code verwijderd ]
dan ook niet mogelijk?
^rewrite/(.*)/(.*)/?quote:Op donderdag 3 juli 2008 20:00 schreef saban het volgende:
[..]
Probleem is al opgelost;
Mijn .htaccess klopte, echter moest MultiViews uitstaan.
Nu stuit ik aan op een ander probleem:
De link mag geen slash aan het eind bevatten, hoe filter ik op een makkelijke manier de laatste slash (indien die er is) eruit.
Ipadres koppelen idd. Dat is de enige manier waarop je de gebruiker nog enigzins uniek kan identificeren.quote:Op zaterdag 5 juli 2008 09:31 schreef splendor het volgende:
Ik ben al een tijdje bezig met een soort framework waarop ik al mijn sites ga bouwen en ik ben nu mijn oude cookie login onder de loep aan het nemen, maar volgens mij is het niet erg veilig.
Op dit moment als iemand bij het inloggen kiest voor [v] Remember me, dan worden de loginnaam en het password (in md5) bij de gebruiker als cookie opgeslagen. Komt de gebruiker op een willekeurig moment met een nieuwe sessie weer op mijn site, dan zal hij aan de hand van die gegevens de gebruiker inloggen.
Het probleem hiervan is alleen, dat zodra iemand die cookie weet te stelen, hij op naam van die persoon kan inloggen.
Hoe is dit goed op te lossen?
Een mogelijkheid is om het IP adres erbij op te slaan, maar dan sluit ik de groep met een dynamic IP adres uit. Of is dit toch zoals veel websites het doen?
Ik heb overigens op google al wat rond gekeken, maar ik kreeg stukken code waarin werd gecontroleerd op login OF password en dan mocht je inloggen.
1 2 3 4 5 6 7 8 9 10 11 | if (empty($naam)) { die('Naam niet ingevuld'); } if (empty($email)) { die('Email niet ingevuld'); } if (empty($vraag)) { die('U heeft geen vraag ingevuld!'); } ?> |
Je kan ook je meldingen in een variabelle opvangen en de variabelle in de die zetten.quote:Op dinsdag 8 juli 2008 09:57 schreef Flaccid het volgende:
Ik heb ff een eventueel noob vraagje:
Ik heb 3 vars, die wil ik checken of ze leeg zijn:
[ code verwijderd ]
Ik wil eigenlijk dat hij pas "died" nadat hij heeft gecheckt of er een vraag is ingevuld. Moet ik daar dan één groot If Else blok van maken?
1 2 3 4 5 6 | onclick=\"window.open('$file', 'Title')\; return false\">origineel</a> )\">n <img style=\"border-color:#000000\; border=2\; margin-right: 30px\;margin-bottom: 30px\;\" alt=\"Title\" title=\"title\" src=\"$file\"></a>n\"; |
Volgens mij zit je een beetje te hannessen met je enkele en dubbelle quootjesquote:Op dinsdag 8 juli 2008 13:42 schreef tim2308 het volgende:
Hallo,
Ik ben bezig met een galerie waarbij de PHP code de bestanden zelf opzoekt (a la http://www.yeuxmarrons.com - maar daar gebruik ik de FlickAPI voor) waar ik de volgene code gebruik
[ code verwijderd ]
Maar ik krijg dan de foutmelding
Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in /home/yeuxmarrons.com/www/photos/agnieska/images/default.php on line 74
Met mijn domme hoofd dacht ik dat het volstond om een backslash voor de puntkomma te zetten, maar dat werkt dus niet. Wie weet raad????
wel binnen single quotes in dubbel quotesquote:Op dinsdag 8 juli 2008 15:26 schreef Xcalibur het volgende:
Dit: '$file'
gaat sowieso niet werken trouwens.... binnen single quotes worden geen variabelen gereplaced
Dit moet worden:quote:Op dinsdag 8 juli 2008 13:42 schreef tim2308 het volgende:
Hallo,
Ik ben bezig met een galerie waarbij de PHP code de bestanden zelf opzoekt (a la http://www.yeuxmarrons.com - maar daar gebruik ik de FlickAPI voor) waar ik de volgene code gebruik
1
2
3
4
5
6cho "<a style=\"color:#2f2f2f\;\" rel=\"lightbox[roadtrip]\" href=\"$file\" Title=\"<B>Title<B> <BR> Gebruik de pijltjestoetsen.. <BR>( <a href=<\"$file\"\; rel=\"lightbox\"
onclick=\"window.open('$file', 'Title')\; return false\">origineel</a> )\">n
<img style=\"border-color:#000000\; border=2\; margin-right: 30px\;margin-bottom: 30px\;\" alt=\"Title\"
title=\"title\" src=\"$file\"></a>n\";
Maar ik krijg dan de foutmelding
Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in /home/yeuxmarrons.com/www/photos/agnieska/images/default.php on line 74
Met mijn domme hoofd dacht ik dat het volstond om een backslash voor de puntkomma te zetten, maar dat werkt dus niet. Wie weet raad????
1 2 3 4 5 6 7 | # Maar je kan beter dit proberen: $onclick = sprintf('window.open("%s", "Title"); return false>origineel</a>', $title); # of $onclick = 'window.open(". $title . '", "Title"); return false>en meer'; |
ik denk dat je dan onbewust de echte fout eruit hebt gehaald. Want ik zie niet in hoe een echo van een puntkomma fouten zou moeten opleveren.quote:Op dinsdag 8 juli 2008 23:43 schreef tim2308 het volgende:
Merci voor jullie hulp. Uiteindelijk heb ik het opgelost door ".chr(59)." toe te voegen op de plaatsen waar een puntkomma stond en het werkt...
Onjuist, de puntkomma's die het einde van de regel aangeven staan buiten de quotes/dubbele quotes:quote:Op woensdag 9 juli 2008 11:04 schreef tim2308 het volgende:
Ik dacht dat de puntkomma's in de echo verward werden met de puntkomma's die het einde van de regel aangeven, zodat alles na de eerste puntkomma niet meer wordt geinterpreteerd.
1 |
Van GIF/JPG naar PNG bedoel je? Dan moet je er wel rekening mee houden dat PNG altijd groter is dan GIF.quote:Op donderdag 10 juli 2008 16:19 schreef Chandler het volgende:
Idd
Ik zal eens kijken wat ik hier mee kan.
Een andere vraag; is het mogelijk om middels php een afbeelding te converteren van GIF/JPG te converteren zonder dat het bestand x10 groter wordt. zoals nu het geval is.
bv $im = loadGIF("plaatje.gif"); imagePNG($im, "plaatje,gif", 9, FILTERS_ALL);anyone?
Hoe kom je daar bijquote:Op donderdag 10 juli 2008 18:25 schreef Light het volgende:
Dan moet je er wel rekening mee houden dat PNG altijd groter is dan GIF.
Dat ligt er natuurlijk maar helemaal aan wat voor soort plaatje het is. Een simpel gifje met veel egale vlakken zal waarschijnljik groter zijn als png bestand, maar een gedetailleerde foto in gif formaat zal meestal groter zijn dan dezelfde foto in png formaat.quote:
SELECT LAST_INSERT_ID();quote:Op vrijdag 11 juli 2008 10:03 schreef Chandler het volgende:
Ik had een jpgje van 56KB omgezet middels bovenstaande code naar PNG en kwam op een bestand uit van ruim 250KB!? beetje te gek vind ik zelf
En heeft iemand een link naar een tutoriaal over replce into etc want als ik via google zoek en de comments lees wordt ik er niet echt heel veel wijzer van
Ik wil namelijk het volgende.
Kijk of ip adres bestaat?
-- Ja --> lees ID
-- Nee -> insert data -> return ID
het gaat mij alleen om het terug gegeven ID
Wel als je aan het inserten bent, want ID`s zijn per definitie auto-increment keys. Whats the use otherwise?quote:Op vrijdag 11 juli 2008 12:34 schreef Chandler het volgende:
@ursel, het ID hoeft dus niet per defenitie de laatste ID te zijn
Volgens jouw beschrijving :quote:Op vrijdag 11 juli 2008 12:34 schreef Chandler het volgende:
@ursel, het ID hoeft dus niet per defenitie de laatste ID te zijn
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.quote:Op vrijdag 11 juli 2008 10:03 schreef Chandler het volgende:
Ik had een jpgje van 56KB omgezet middels bovenstaande code naar PNG en kwam op een bestand uit van ruim 250KB!? beetje te gek vind ik zelf
Gewoon die replace into gebruiken... Maar hoe ziet je code eruit, want ik snap niet echt wat er fout kan gaan met deze queries.quote:Op vrijdag 11 juli 2008 14:35 schreef Chandler het volgende:
Ik heb bv een tabel met ip adressen
10 10.10.10.1
11 10.10.10.2
12.10.10.10.3
Nu wil ik kijken of een ip adres bestaat, zo niet gelijk toevoegen.
SELECT id FROM ip WHERE ip='10.10.10.4'
MySQL returned 0 oftewel geen ID gevonden
Daarna doe ik een insert (ip) maar krijg een error dat 10.10.10.4 wel bestaat, raar!? deze stond er net nog niet in!
Dus genereerd mijn script een fout.
Wat wil ik nu? een manier vinden voor het voorkomen van dit probleem, een IF NOT EXISTS INSERT oid en daarna het ID van dit ip adres uitlezen, afvangen.
Hopelijk ben ik nu duidelijker.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | Query OK, 0 rows affected (0.05 sec) mysql> insert into ip (ip) VALUES ('10.0.0.1'); Query OK, 1 row affected, 1 warning (0.03 sec) mysql> insert into ip (ip) VALUES ('10.0.0.2'); ERROR 1062 (23000): Duplicate entry '0' for key 1 -- drop table ip mysql> create table ip ( id INT NOT NULL PRIMARY KEY AUTO_INCREMENT, ip TEXT ); Query OK, 0 rows affected (0.00 sec) mysql> insert into ip (ip) VALUES ('10.0.0.2'); Query OK, 1 row affected (0.00 sec) mysql> insert into ip (ip) VALUES ('10.0.0.2'); Query OK, 1 row affected (0.00 sec) mysql> insert into ip (ip) VALUES ('10.0.0.2'); Query OK, 1 row affected (0.00 sec) |
Gewoon, ruim binnen de 10240 bytes en nooit zin gehad om het gevonden plaatje aan te passen.quote:Op donderdag 10 juli 2008 22:25 schreef SuperRembo het volgende:
En Light, waarom is je usericon een jpeg?
Wat raad je me aan dan? hoe kan ik toch zorgen dat deze afbeeldingen kleiner worden?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.
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 voorkomtquote: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.
Check je indexen eens....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 wordtoid?
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.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?
1 2 3 4 5 6 7 | `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 |
Ik had de compressie al op 9 gezet maar dat werkte ook niet echtquote: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.
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 | $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_new, 9); 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_new, 9); 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_new, 9); 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_new, 9); echo 'Org:' . filesize($img) . " - new: " . filesize($img_new) . '<br />'; echo '<img src="' . $img_new . '"><br />'; unset($im); unset($im_new); ?> |
Dat laatste zal het wel zijn dan maar wij kunnen niet zien waar en wanneer dat script aangeroepen wordt.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 wordtoid?
[edit]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)
Maar iemand nog een duidelijke tutoriaal over on replace?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.
Omdat ik graag binnen het systeem 1 bestandstype support. Of is dit onzin?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?
Je zou eens hier of hier kunnen kijken.quote:Op zaterdag 12 juli 2008 13:19 schreef Chandler het volgende:
[..]
Maar iemand nog een duidelijke tutoriaal over on replace?
Het voegt niets toe in vergelijking met het ondersteunen van gif/jpg/png.quote:Omdat ik graag binnen het systeem 1 bestandstype support. Of is dit onzin?
Ja, tijd voor een andere aanpak.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?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?
en als je nou vier TINYINT's doetquote: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 ziendaarvoor had ik nog te weinig ip adressen.
quote:
1 2 3 4 | 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 |
quote:Another way to use GROUP BY or ORDER BY on a BLOB or TEXT column containing long values when you want more than max_sort_length bytes to be significant is to convert the column value into a fixed-length object. The standard way to do this is with the SUBSTRING() function. For example, the following statement causes 2000 bytes of the comment column to be taken into account for sorting:
mysql> SELECT id, SUBSTRING(comment,1,2000) FROM t
-> ORDER BY SUBSTRING(comment,1,2000);
Als je een odbc aanmaakt vind hij je sql dan welquote:Op maandag 14 juli 2008 11:38 schreef bobsqaud het volgende:
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.
topic_first_poster_name is een blob? Welke idioot heeft dat bedachtquote:Op maandag 14 juli 2008 23:03 schreef ralfie het volgende:
Terwijl ik dit typ bedenk ik mij dat in phpbb3 (wat ik aan het modden ben) de waarde die ik ORDER als BLOB opslaat.
in phpbb3 zijn zo'n beetje alle strings van niet-vaste waarde een BLOB. Geen wonder dat het forum zo traag als dikke stront isquote:Op dinsdag 15 juli 2008 08:11 schreef SuperRembo het volgende:
[..]
topic_first_poster_name is een blob? Welke idioot heeft dat bedacht
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | <head> <title>Really Simple CMS</title> </head> <body> <h1>Really Simple CMS</h1> <?php mysql_connect("bla", "bla", "bla"); $result = @mysql_query("SELECT contents from bla"); while ($row = mysql_fetch_assoc($result)){ $contents = $row['contents']; } ?> <form name="form1" method="post" action="updatepage.php"> Enter page content:<br><textarea rows="10" cols="60" name="contents"><?php echo "$contents" ?></textarea> <input type="submit" name="Submit" value="Update Page"> </form> </body> </html> |
wat wil je ermee gaan doen? als je een soort van nieuwspagina wil maken zit je al gauw aan wat ingewikkeldere code, een kant-en-klaar CMS kan dan makkelijker voor je zijn.quote:Op dinsdag 15 juli 2008 17:37 schreef Mirel het volgende:
Hallo, met Mirel, php kleuter.
Ik wil voor een website een soort van text editor hebben, waarin je je allemaal dingen typt, en die op een pagina worden gezet. Heb een héél simpele tutorial gevonden die ik heb gedaan en hier even geupload om te testen.
Wat ie nu doet is tekst op een pagina zetten, maar als je nieuwe tekst erop typt, dan wist ie de andere uit. Wat moet ik in de code toevoegen dat ie dat niet doet?
[ code verwijderd ]
Of moet ik nu iets totaal anders doen, ben echt een php leek.![]()
Ik lees nu ondertussen iets over kant en klare WYSIWYG editors waarmee waarschijnlijk hetzelfde bereikt kan worden, weet iemand daar iets meer over te vertellen?
Ja ik zie het nu ook pas. :'0quote:Op dinsdag 15 juli 2008 18:52 schreef Xcalibur het volgende:
Je probleem met het kwijtraken van de tekst snap ik niet, ik krijg de tekst die in het venster staat. Als je die weghaalt, is ie weg, als je em laat staan blijft ie staan... beetje wat je zou verwachten zeg maar
Wat betreft de WYSIWYG editor: kijk eens op http://tinymce.moxiecode.com of zoek eens naar FCKeditor
Het opslaan van de pagina gebeurt in updatepage.php en die heb je niet gepost. Het is heel simpel om ipv tekst te vervangen iets toe te voegen. Waarschijnlijk zou je dat door updatepage.php te bekijken in combinatie met de pagina die je hebt gepost, en wat basis SQL kennis, gewoon door het betere copy/paste werk best zelf voorelkaar kunnen krijgen, maar als dat echt niet lukt, post het script hier ff, het is nl een kleine aanpassing.quote:Op dinsdag 15 juli 2008 19:12 schreef Mirel het volgende:
Het is voor een website die ik beheer, en het betreft één pagina ja.
[..]
Ja ik zie het nu ook pas. :'0
1 2 3 4 5 6 7 8 9 10 | {loop=%express%} {if %express%==1} laat dit zien {/if} {if %express%==2} laat dit zien {/if} {/loop} {/ifset} {ifset %test%} {ifset %testobject} yes {/ifset} {/ifset} |
1 2 3 4 5 6 7 | if (isset ($express)) { $loop = $express; if ($express == 1) { echo "brul 1"; } if ($express == 2) { echo "brul2"; } } ?> |
Is dit smarty?quote:Op vrijdag 18 juli 2008 15:37 schreef Chandler het volgende:
Even een leuke vraag,
Hoe moeilijk is het om middels php stackbased te parsen?
bv
[ code verwijderd ]
Ik heb al eens een poging gedaan maar echt goed ging het niet
Zo zou het geintrepeteerd moeten wordenquote:
nee, gisteren even uit het handje geklopt. Maar de vraag is hoe je zo iets stackbased kunt parsen!?quote:Op vrijdag 18 juli 2008 17:30 schreef slakkie het volgende:
Is dit smarty?
Met een stack waarschijnlijk.quote:Op zaterdag 19 juli 2008 14:16 schreef Chandler het volgende:
[..]
Zo zou het geintrepeteerd moeten worden
[..]
nee, gisteren even uit het handje geklopt. Maar de vraag is hoe je zo iets stackbased kunt parsen!?
Kijk eens naar de parser van phpbb of gebruik gewoon het voorstel van 1DIOOT. Dat is altijd nog de snelste oplossing.quote:Op zaterdag 19 juli 2008 14:59 schreef Chandler het volgende:
Maar vertel eens hoe ik dat moet gaan aanpakken?
ik geloof niet dat iemand hier nu snapt wat je wil...quote:Op zaterdag 19 juli 2008 14:59 schreef Chandler het volgende:
Maar vertel eens hoe ik dat moet gaan aanpakken?
Ik vraag me af of hij het zelf wel snapt...quote:Op zaterdag 19 juli 2008 19:28 schreef ralfie het volgende:
[..]
ik geloof niet dat iemand hier nu snapt wat je wil...
1 2 3 | laat dit zien {/ifset} |
1 2 3 4 5 | {ifset %variabel2%} laat dit zien {/ifset} {/ifset} |
Zo'n idee had ik.quote:Op zaterdag 19 juli 2008 21:39 schreef Chandler het volgende:
Wat een onzin reacties, mocht je een beetje kennis hebben van scripten, dan zien jullie gelijk dat het om een template gaat waarin bepaalde zaken geparsed moeten worden.
Gebruik Smarty.quote:Ik heb al een tijd gezocht naar een manier om efficient een template te parsen zonder al te veel extra routines.
Zoals bij Smarty? Dat kun je gewoon gebruiken, veel makkelijker en sneller dan zelf opnieuw het wiel uitvinden.quote:Om het dus kort te houden; ik wil graag weten hoe je het beste een template kan parsen waar gekeken wordt naar de statements tussen de { en } waarbij binnen een blok een subblok mogelijk is
Ja. Je wilt Smartyquote:voorbeeld van een blok:
[ code verwijderd ]
voorbeeld van een blok in een blok
[ code verwijderd ]
beetje het zelfde als een quote in een quote dat mogelijk is op verschillende fora's.
Hopelijk heb ik mij nu wat duidelijker uitgedrukt!.
Truequote:Op zondag 20 juli 2008 11:31 schreef super-muffin het volgende:
Wat is er mist met een native PHP template?
Dat is altijd nog het snelst.
Jou post is nogal kansloos vriend, stackbased parsen zit al ruim 4 jaar in mijn hoofd maar is er nog nooit uitgekomen qua scripten.quote:Op zaterdag 19 juli 2008 23:40 schreef Farenji het volgende:
Jezus chandler wat kun je soms toch kansloos overkomen. Met je "stackbased parsen", heb je weer ergens een termpje opgevangen?
Tuurlijk, maar je kan ook gebruik maken van modules/libraries/etc om zo je eigen code base kleiner te maken/oiverzichtelijker te houden. Zo wilde ik een LDAP API maken welke OO based was, maar die bleek er al te zijn in de vorm van Net_LDAP2. Dan ga ik niet nogmaals het wiel uitvinden als mensen mij al voor zijn..quote:Op maandag 21 juli 2008 12:19 schreef Chandler het volgende:
Verder zou ik zeggen tegen iedereen die zegt dat ik het wiel niet opnieuw moet uitvinden om dan maar lekker te stoppen met scripten want volgens mij is alles al eens een keertje gemaakt.
Nou, eerlijk gezegd denk ik (ook nav je codefragmentje) een beetje dat je niet weet wat er precies met een stack bedoeld wordt (en dus ook niet waarom/wanneer het beter is dan andere manieren van parsen) maar dat je het wel interessant vindt klinken.quote:Op maandag 21 juli 2008 12:19 schreef Chandler het volgende:
[..]
Jou post is nogal kansloos vriend, stackbased parsen zit al ruim 4 jaar in mijn hoofd maar is er nog nooit uitgekomen qua scripten.
Ik heb een Windows 2003 server (2 dual cores, 6Gb) met Apache, PHP en MySQL. Hierop draait een soort van helpdesk tool op. Probleem is de webpagina van de een op de andere dag bagger traag is geworden.quote:
1 2 3 4 5 6 7 8 9 10 11 12 13 | <dl> <dt onmouseover="javascript:montre('smenu1');"><a href="http://www.pestforum.nl/forum" target = blank>Forum</a></dt> <dd id="smenu1"> <ul> <li><a href="http://www.pestforum.nl/forum">Bezoek het forum</a></li> <li><a href="http://pestforum.nl/forum/index.php?act=Reg&CODE=00">Registreer een account</a></li> <li><a href="http://pestforum.nl/forum/index.php?showtopic=1855">Bekijk de regels</a></li> </ul> </dd> </dl> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | <dl> <dt onmouseover='javascript:montre('smenu1');'><a href='http://www.pestforum.nl/forum' target = blank>Forum</a></dt> <dd id='smenu1'> <ul> <li><a href='http://www.pestforum.nl/forum'>Bezoek het forum</a></li> <li><a href='http://pestforum.nl/forum/index.php?act=Reg&CODE=00'>Registreer een account</a></li> <li><a href='http://pestforum.nl/forum/index.php?showtopic=1855'>Bekijk de regels</a></li> </ul> </dd> </dl> |
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 | <div id="menu"> <dl> <dt onmouseover="javascript:montre();"><a href="http://www.pestforum.nl" title="Terug naar de startpagina">Home</a></dt> </dl> //Lets get the menu here! include('connect.php'); $Counter = 0; $sql = "SELECT * FROM cmsmnu WHERE Mother = 0 ORDER BY Position"; $query = mysql_query($sql) or die(mysql_error()); while ($result = mysql_fetch_array($query)) { $Counter++; $MnuID = $result['ID']; $MnuText = $result['Text']; $MnuLink = $result['Link']; $MnuMother = $result['Mother']; $MnuNewPage = $result['Newpage']; $MnuTarget = ''; // Reset! If ($MnuNewPage == 1) { $MnuTarget = 'target = blank'; } echo" <dl> <dt onmouseover=\"javascript:montre('smenu$Counter');\"><a href='$MnuLink' $MnuTarget>$MnuText</a></dt> <dd id='smenu$Counter'> <ul> "; //Now check if there is a submenu for this menu, and generate it! $sql = "SELECT * FROM cmsmnu WHERE Mother = '$MnuID' ORDER BY Position"; $query = mysql_query($sql) or die(mysql_error()); while ($result = mysql_fetch_array($query)) { $MnuText = $result['Text']; $MnuLink = $result['Link']; $MnuMother = $result['Mother']; $MnuNewPage = $result['Newpage']; $MnuTarget = ''; // Reset! If ($MnuNewPage == 1) { $MnuTarget = 'target = blank'; } echo " <li><a href='$MnuLink' $MnuTarget>$MnuText</a></li>"; } echo "</ul></dd> "; } </dl> </div> ?> |
het ziet er naar uit dat je $query als mysql result overschrijft...quote:Op dinsdag 22 juli 2008 20:38 schreef LeeHarveyOswald het volgende:
Gelukt, dankjewelBen ik alleen bij het volgende probleem aanbeland...
Onderstaande code werkt, haalt info op uit een database, en tekent een menu uit. En de submenu's.
Dat gaat goed. 1x. Ik heb nl. 2 menu's in de database staan (Forum en Informatie) en ik krijg er maar 1..
Werking te zien op http://pestforum.nl/users/test.php
[ code verwijderd ]
Oh heerlijk, php, html, javascript en mysql dwars door elkaarquote:Op dinsdag 22 juli 2008 20:38 schreef LeeHarveyOswald het volgende:
Werking te zien op http://pestforum.nl/users/test.php
[ code verwijderd ]
Je hebt nu 2x praktisch dezelfde query staan. Daar kan je makkelijk 1 functie van maken die een array met menu-item data geeft. Dat maakt het een stuk leesbaarder:quote:Op dinsdag 22 juli 2008 22:03 schreef LeeHarveyOswald het volgende:
Ja, je moet wat, als je je menustructuur uit een database wilt halen en wilt laten uittekenen :D
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | $mainMenuItems = readMenu(0); foreach ($mainMenuItems as $item) { ++$counter; printf('<dl>...</dl>', $counter, htmlspecialchars($item['Link']), htmlspecialchars($item['Text']), ...); $subMenuItems = readMenu($item['ID']); foreach ($subMenuItems as $subItem) { printf('<li>...</li>', htmlspecialchars($subItem['Link']), htmlspecialchars($subItem['Text']), ...); } } |
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |