Chandler | donderdag 1 februari 2007 @ 19:20 | |||||
![]() cd niet bijgeleverd ![]() Als je vragen hebt over PHP/MySQL, dan zit je hier goed met een vaste kliek guru\'s en een groot aantal regelmatige bezoekers. Beperk je vragen niet tot \"hij doet het niet\" of \"hij geeft een fout\" - onze glazen bol is kapot en we willen graag van je weten wát er niet lukt en wélke foutmelding je precies krijgt ![]() Vorige delen 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 Zie ook Tutorials Deze OP en instructies voor nieuw topic: http://wiki.fok.nl/index.php/OP/PHP En we gaan weer verder! Laatste post quote: | ||||||
CraZaay | donderdag 1 februari 2007 @ 20:19 | |||||
tvp dan maar. | ||||||
Tuvai.net | donderdag 1 februari 2007 @ 22:25 | |||||
Tieten in een envelop. | ||||||
the_disheaver | vrijdag 2 februari 2007 @ 01:01 | |||||
uhhh, kun je met php console opdrachten enzo uitvoeren? ofwel: kun je met een linux, lamp en tex installatie latex bestandjes compileren? | ||||||
hornage | vrijdag 2 februari 2007 @ 09:15 | |||||
quote:Volgens mij kan dat hiermee: http://nl2.php.net/manual/nl/migration5.cli-cgi.php | ||||||
Darkomen | vrijdag 2 februari 2007 @ 11:03 | |||||
![]() | ||||||
Zaktuig | vrijdag 2 februari 2007 @ 11:33 | |||||
http://nl2.php.net/manual/nl/ref.exec.php daar kan je volgens mij een heel eindje mee komen. | ||||||
super-muffin | vrijdag 2 februari 2007 @ 11:59 | |||||
Ik heb al een simpele class geschreven ![]() Zie alleen nog niet het echte voordeel er van in, maar het staat wel stoer, Object Georiënteerd Programmeren ![]() | ||||||
Tijn | vrijdag 2 februari 2007 @ 14:13 | |||||
Kan iemand me uitleggen hoe ik werk met DATETIME in MySQL? Ik heb een tabel gemaakt waarin elk record o.a. zo'n veld heeft, en daar staan dus dingen in als "2007-02-01 22:35:30". Prima. Maar hoe krijg ik nu bv alle resultaten van gisteren? Of alle resultaten tussen 10 en 11 uur? | ||||||
#ANONIEM | vrijdag 2 februari 2007 @ 14:16 | |||||
quote:Ach, dat is tegenwoordig standaard. Anyway: tvp. | ||||||
Chandler | vrijdag 2 februari 2007 @ 14:18 | |||||
quote:UNIX_TIMESTAMP van de datum maken en dan de datum van gisteren als parameter in de where meegeven oid... | ||||||
Tijn | vrijdag 2 februari 2007 @ 14:20 | |||||
quote:Ah, de UNIX_TIMESTAMP() functie. Dat ziet er inderdaad veel belovend uit ![]() Waarom zou ik m'n data dan eigenlijk nog als datetime opslaan en niet gelijk als timestamp? | ||||||
Tuvai.net | vrijdag 2 februari 2007 @ 14:21 | |||||
quote:Leuk. ![]() ![]() | ||||||
Tuvai.net | vrijdag 2 februari 2007 @ 14:21 | |||||
Tijn: Ik zou inderdaad ook overschakelen naar UNIX timestampts. Vind ik persoonlijk veel flexibeler... | ||||||
Tijn | vrijdag 2 februari 2007 @ 14:25 | |||||
quote:Loop je natuurlijk wel tegen het Y2K38 probleem aan, maar okay, dat lossen we dan wel weer op ![]() | ||||||
Tuvai.net | vrijdag 2 februari 2007 @ 14:28 | |||||
Dat is nog 31 jaar verder. ![]() ![]() | ||||||
ralfie | vrijdag 2 februari 2007 @ 14:34 | |||||
quote:bijv
EDIT: ik ben wel errug laat hiero. TVP dan maar enzo ![]() | ||||||
hornage | vrijdag 2 februari 2007 @ 14:34 | |||||
quote:voor alles van gisteren:
waarin date dus een field is van het type datetime voor alles tussen 10 en 11 uur (dus ook andere dagen):
meer mysql functies die met datum en tijd te maken hebben: http://dev.mysql.com/doc/(...)-time-functions.html | ||||||
Tijn | vrijdag 2 februari 2007 @ 14:40 | |||||
Bedankt mensen ![]() ![]() | ||||||
Tijn | vrijdag 2 februari 2007 @ 14:50 | |||||
Oh, nu ik hier toch ben, ik heb nog een vraagje over MySQL trouwens, want ik ben best wel een databasekneus ![]() Wat is de handigste manier om het aantal verschillende entries in een field te bepalen? Ik heb een tabel met daarin een field waarin IP-nummers worden onthouden en ik wil graag het aantal verschillende IP-adressen weten wat erin staat. Hoe ik het nu heb opgelost is een query die alle IP-adressen binnenhaalt en daarna met PHP een while-lus die de verschillende telt, maar ik heb het idee dat het efficienter kan met een goede query. | ||||||
CraZaay | vrijdag 2 februari 2007 @ 14:55 | |||||
quote:GROUP BY? | ||||||
ralfie | vrijdag 2 februari 2007 @ 14:57 | |||||
select count(distinct(kolomnaam)) from tabelnaam | ||||||
#ANONIEM | vrijdag 2 februari 2007 @ 14:59 | |||||
distinct idd. | ||||||
Tijn | vrijdag 2 februari 2007 @ 15:19 | |||||
quote:Ah cool, dit werkt ook heel goed. Bedankt weer ![]() | ||||||
JortK | vrijdag 2 februari 2007 @ 16:03 | |||||
tvp ![]() | ||||||
Chandler | vrijdag 2 februari 2007 @ 19:23 | |||||
Ik heb een vraag over http://nl2.php.net/manual/nl/function.setcookie.php ![]() Nu wil ik op een website bv www.website.nl een cookie zetten maar deze cookie moet ook uitgelezen kunnen worden op subdomein.website.nl, hoe kan ik dit realiseren? ![]() | ||||||
Tuvai.net | vrijdag 2 februari 2007 @ 20:51 | |||||
Het vierde optionele argument van setcookie() is een directory/path. ![]() | ||||||
Chandler | vrijdag 2 februari 2007 @ 21:11 | |||||
correct, maar het pad is het zelfde... alleen de subdomeinen zijn verschillend ![]() ![]() | ||||||
Tuvai.net | vrijdag 2 februari 2007 @ 21:15 | |||||
Is gewoon een kwestie van de goeie path en domain invullen. Lees anders dit eens door: http://ific.uv.es/informa(...)ction.setcookie.html path The path on the server in which the cookie will be available on. If set to '/', the cookie will be available within the entire domain. If set to '/foo/', the cookie will only be available within the /foo/ directory and all sub-directories such as /foo/bar/ of domain. The default value is the current directory that the cookie is being set in. domain The domain that the cookie is available. To make the cookie available on all subdomains of example.com then you'd set it to '.example.com'. The . is not required but makes it compatible with more browsers. Setting it to www.example.com will make the cookie only available in the www subdomain. Refer to tail matching in the spec for details. | ||||||
Chandler | vrijdag 2 februari 2007 @ 22:23 | |||||
je hebt inderdaad gelijk, denk dat ik eerder een foutieve setcookie heb gebruikt setcookie("website", "value", time() + 3600, '/', 'website.nl'); ![]() | ||||||
Light | vrijdag 2 februari 2007 @ 22:38 | |||||
quote:Ergens in de komende 30 jaar kun je je data vast wel omzetten naar 64 bit. Dan heb je voorlopig geen problemen meer. | ||||||
Xtr3mE | zaterdag 3 februari 2007 @ 09:12 | |||||
Ik wil met een while functie uit 2 tabellen gegevens uithalen en deze in een tabel zetten. Nu heb ik uit tabel 1 alles uitgelezen (artikelcodes) en wil ik uit de 2e tabel de naam van die artikelcodes erbij halen. Zo zien de tabellen er uit: extra Artikelcode Extra artikel Artikelcode Omschrijving ... De Extra uit de tabel extra staat dus ook in de tabel artikel als Artikelcode de code die ik totdusver heb ik:
Resultaat Dus hoe kan ik die omschrijving van de bijbehorende artikelcodes ook uitlezen en waar precies in de code neer te zetten..ik zit dan steeds in de war met een dubbele while en kom er niet uit.. | ||||||
Xtr3mE | zaterdag 3 februari 2007 @ 10:22 | |||||
Na wat gepuzzel is het gelukt! ![]() | ||||||
Chandler | zaterdag 3 februari 2007 @ 10:25 | |||||
quote:En wat is de oplossing dan? | ||||||
Tuvai.net | zaterdag 3 februari 2007 @ 10:29 | |||||
Een JOIN gebruiken in de query dus. MySQL documentatie JOIN. | ||||||
fokME2 | zondag 4 februari 2007 @ 22:17 | |||||
Leuk een PHP topic! | ||||||
wipes66 | dinsdag 6 februari 2007 @ 04:07 | |||||
Weet iemand hoe je in php thumbnail kan maken die niet wazig zijn? Ik gebruik gewoon imagecopyresampled en ImageCreateTrueColor, maar de kwaliteit is echt beroerd. Het veschil tussen photoshop en php ![]() ![]() | ||||||
Tuvai.net | dinsdag 6 februari 2007 @ 06:02 | |||||
Met het volgende script, uitgaande dat je afbeeldigen in JPG formaat zijn. Let er op dat de folder van de afbeeldingen die je probeert te verkleinen, voldoende CHMOD rechten heeft.
| ||||||
wipes66 | dinsdag 6 februari 2007 @ 07:35 | |||||
Ja dat is dus precies wat ik gebruik. Je moet wel verder lezen dan "Weet iemand hoe je in php thumbnail kan maken ..." ![]() | ||||||
Tuvai.net | dinsdag 6 februari 2007 @ 09:03 | |||||
Um, dat scriptje wat ik gepost heb doet anders precies wat je wilt hoor. Sowieso krijg je bij het verkleinen van afbeeldingen nooit een haarscherpe afbeelding. Of je moet een zogenaamde 'niet-intelligente' verkleining gebruiken maar dan krijg je meestal een misvormde afbeelding. | ||||||
wipes66 | dinsdag 6 februari 2007 @ 09:53 | |||||
quote:Ja het verkleint een afbeelding, alleen zodanig onscherp dat ik een andere methode zoek. quote:Jawel hoor, kijk maar naar mijn afbeelding php vs photoshop. | ||||||
Tuvai.net | dinsdag 6 februari 2007 @ 10:10 | |||||
quote:En heb je in je eigen scriptje de kwaliteit wel op 100 staan? De voorbeeldafbeelding die je post is dusdanig onscherp dat ik wel zeker weet dat er een compressiepercentage op gebruikt is. D'r zitten zelfs vlekken kleurverschil in het witte van de achtergrond. | ||||||
Tijn | dinsdag 6 februari 2007 @ 10:16 | |||||
quote:Je zou in plaats van GD ook Image Magick eens kunnen proberen, als dat op je server geinstalleerd is. De imagick_resize() functie heeft een blur-argument, waarmee je je plaatje scherper of blurrier kunt maken. Wie weet krijg je het daarmee wel goed. | ||||||
wipes66 | dinsdag 6 februari 2007 @ 11:02 | |||||
quote:hij stond op 75, maar als ik het op 100 zet maakt het nog niet veel uit. | ||||||
wipes66 | dinsdag 6 februari 2007 @ 11:18 | |||||
quote:Ja magick schijnt een stuk beter te zijn, maar het staat helaas niet op mijn server ![]() | ||||||
Chandler | dinsdag 6 februari 2007 @ 11:34 | |||||
Beetje offtopic maar wel weer ontopic ivm subdomeinen. Weet iemand een heel klein DNS servertje die ik thuis kan draaien om te kunnen werken met subdomeinen op mijn localhost zonder dat ik voor ieder 'test' domein een apparte regel aan mijn HOSTS bestand hoef toe te voegen? anyone? | ||||||
ViPeRII | dinsdag 6 februari 2007 @ 11:51 | |||||
@Chandler.. kies er een uit ![]() http://www.newfreedownloads.com/find/dns-server.html | ||||||
koekiemonster | dinsdag 6 februari 2007 @ 12:46 | |||||
Ik heb onderstaande string door middel van een post-actie doorgegeven, hoe kan ik de string omzetten naar een werkende array? Ik heb inmiddels al verschillende dingen geprobeerd, maar ik krijg het niet vor elkaar. moet niet extreem moeilijk zijn, maar ik kom er niet meer uit: de string: quote:Zou eigenlijk, zoiets moeten kunnen echo $sub_list[0]; zou moeten geven 17 | ||||||
Tuvai.net | dinsdag 6 februari 2007 @ 12:50 | |||||
Probeer de post string anders eens te parsen als bijvoorbeeld: 17,6,3,4,18,29,19 Of met waardes gescheiden door een ander teken in plaats van een komma. Op de nieuwe pagina kun je dan door middel van explode() een array maken. ![]() | ||||||
koekiemonster | dinsdag 6 februari 2007 @ 13:10 | |||||
datkan niet, want bovenstaande is hetgeen ik krijg aangeleverd door een ander sript. de string dient dus op deze manier omgezet te worden naar array. | ||||||
the_disheaver | dinsdag 6 februari 2007 @ 13:16 | |||||
| ||||||
koekiemonster | dinsdag 6 februari 2007 @ 13:29 | |||||
Doet ik maar als ik $sub_list[0] doe dan krijg ik de gehele array, in plaats van de eerste waarde. | ||||||
the_disheaver | dinsdag 6 februari 2007 @ 13:32 | |||||
met <?php $sub_list = $_GET['sub_list']; print $sub_list[0]; ?> krijg ik gewoon 17 En de gehele array > niet alleen de melding dat de string een array is? | ||||||
ralfie | dinsdag 6 februari 2007 @ 14:11 | |||||
ok, dus je wilt die string omzetten (als ik het goed begrijp)? Hier heb je wat voorbeelden
| ||||||
Chandler | dinsdag 6 februari 2007 @ 15:03 | |||||
quote:Jammer dat ik er geen kan kiezen aangezien ze allemaal $$ kosten ![]() | ||||||
Darkomen | dinsdag 6 februari 2007 @ 17:29 | |||||
$string = "sub_list[]=17&sub_list[]=6&sub_list[]=3&sub_list[]=4&sub_list[]=18&sub_list[]=20&sub_list[]=19"; $string = str_replace ("sub_list[]", "", $string); $string = str_replace ("&", "", $string); $string = substr($string,1,strlen($string)); $array = explode('=',$string); print'<pre>'; print_r($array); print'</pre>'; Het is niet netjes, maar het werkt ![]() | ||||||
SuperRembo | dinsdag 6 februari 2007 @ 18:19 | |||||
quote:Parse_str() is denk ik wel de mooiste oplossing. Alleen is het wel handig om 'm even in een functie te zetten, om te voorkomen dat er andere variabelen gezet worden dan je eigenlijk wil. | ||||||
koekiemonster | dinsdag 6 februari 2007 @ 18:31 | |||||
thanx! | ||||||
JortK | woensdag 7 februari 2007 @ 09:17 | |||||
Ik heb gisteravond een hele tijd zitten kloten, maar kom er niet uit: Ik heb een form gemaakt met drie velden: Datum (form input type text) Aantal (form input type text) Hits (form input type text) Nu wil ik deze drie gaan inlezen in me database met de volgende query: INSERT INTO statis (vDatum, vAantal, vHits) VALUES (Datum, Aantal, Hits) Kolommen hebben de volgende data types: vDatum = date vAantal = numeric vHits = numeric Nu zegt me form netjes dat die het record heeft aangemaakt, maar met een select zie ik de records niet terug (spreek: me tabel is nog steeds leeg ![]() Hoe kan dit... Zal het te maken hebben met datatypes verschillen tussen me form en query? Ik heb niet de source bij de hand, zit nu op me werk ![]() Kan iemand mij helpen, voor zover? | ||||||
hornage | woensdag 7 februari 2007 @ 09:43 | |||||
Misschien krijg je tijdens het uitvoeren van je insert query een foutmelding van mysql? Voer je je query wel op de volgende manier uit? Zo krijg je tenminste informatie als er iets fout gaat:
| ||||||
JortK | woensdag 7 februari 2007 @ 09:47 | |||||
Nee ik voer m zo uit:
Maar hij gaat gewoon door naar de Echo die eronder staat. Deze ga ik vanavond ff proberen.. | ||||||
hornage | woensdag 7 februari 2007 @ 10:08 | |||||
naja, als je dus wel een die() uitvoert en je krijgt niet die string te zien dan zal de query ansich wel goed zijn. MMm, misschien benader je dan de gegevens uit de $_POST verkeerd | ||||||
JortK | woensdag 7 februari 2007 @ 10:27 | |||||
Moet ik niet me datum die ik zo invoer: 07-02-2007 CASTEN in me query? | ||||||
Desdinova | woensdag 7 februari 2007 @ 11:03 | |||||
deel 38 ![]() ik heb een mysql vraag.. ik heb een tabel Itemdata, met hierin ID, ItemID, en CategorieID ook heb ik een tabel Items. Ik wil een query samenstellen die alle records uit Itemdata trekt waar het ItemID zowel CategorieID 1 als CategorieID 2 heeft, maar alleen de items die voldoen aan beide voorwaarden. Ik kan maar 1 CategorieID per record in Itemdata toevoegen.. dus hij moet 2 records uit Itemdata trekken waarbij ItemID hetzelfde is en CategorieID 1 en CategorieID 2 is. ![]() Uiteraard in 1 query.. | ||||||
ralfie | woensdag 7 februari 2007 @ 11:38 | |||||
dit is een mogelijkheid, weet niet of er een betere is select * from itemdata i where i.CategorieID=1 AND CASE WHEN EXISTS(SELECT * FROM itemdata e WHERE e.categorieID=2 AND e.ItemID=i.itemID) THEN 1 ELSE 0 END=1 zws beetje omslachtig, maar het werkt ![]() | ||||||
super-muffin | woensdag 7 februari 2007 @ 11:54 | |||||
Heb je hier niks aan Desdinova? http://dev.mysql.com/doc/refman/5.0/en/searching-on-two-keys.html | ||||||
wobbel | woensdag 7 februari 2007 @ 15:51 | |||||
Oke, komt ie ![]() Ik heb 1 tabel met categorieën en 1 tabel met subcategorieën ![]() Tabel: Categorie - IdCategorie - Categorie Waarden bij tabel Categorie 1 | Koekoeksklokken 2 | Horloges Tabel: Subcategorie - IdSubcategorie - CategorieId - Subcategory Waarden bij tabel Subcategorie 1 | 1 | Met levende vogeltjes 2 | 1 | Met dode vogeltjes 3 | 2 | Mooie horloges 4 | 2 | Lelijke horloges 5 | 2 | Horloges gestolen door negers Hoe zorg ik er nu voor dat ik het zo uit de database kan halen: Koekoeksklokken - Met levende vogeltjes - Met dode vogeltjes Horloges - Mooie horloges - Lelijke horloges - Horloges gestolen door negers | ||||||
super-muffin | woensdag 7 februari 2007 @ 15:57 | |||||
SELECT * FROM categorie, Subcategorie WHERE SubCategorie.Subcategorie = categorie.idCategorie Ik had vanmiddag het zelfde, zo werkt het wel ongeveer, nu nog alles netjes in een UL zien te krijgen. ![]() | ||||||
wobbel | woensdag 7 februari 2007 @ 16:02 | |||||
quote:En dat is het probleem, want nu krijg ik: Categorienaam - Subcategorie Categorienaam - Subcategorie steeds | ||||||
super-muffin | woensdag 7 februari 2007 @ 16:08 | |||||
Dan moet je dit gebruiken (had ik van iemand van Fok! gekregen)
| ||||||
wobbel | woensdag 7 februari 2007 @ 16:48 | |||||
Gelukt ![]() Als het anders kan (of makkelijker en sneller) gelieve even te posten.
[ Bericht 67% gewijzigd door wobbel op 07-02-2007 16:53:48 ] | ||||||
Chandler | woensdag 7 februari 2007 @ 17:51 | |||||
sjeetje wat een hoop spacing zeg ![]() | ||||||
wobbel | donderdag 8 februari 2007 @ 07:36 | |||||
quote:Ik werk altijd met tabjes enzo en met een template parser (en mijn script had ik ff omgebouwd voor fok zonder template parser) Maar het echte script gebruikt veel meer if/else statements, dus dan moeten de inspringen wat meer naar rechts ![]() | ||||||
JortK | donderdag 8 februari 2007 @ 10:51 | |||||
Ik wordt helemaal leip van die spacing ongelofelijk ![]() Het is trouwens gelukt met me date inserten, had nog een oud veld in me query staan * JortK is lul ![]() | ||||||
Swetsenegger | donderdag 8 februari 2007 @ 11:44 | |||||
Ordinaire terug vind post | ||||||
JortK | donderdag 8 februari 2007 @ 11:45 | |||||
quote:Viezerik ![]() | ||||||
Desdinova | donderdag 8 februari 2007 @ 14:57 | |||||
is er een manier om alle records waarvan het ID in een $array staat uit de database te halen? zonder dat je moeilijk moet gaan doen met een foreach-loop van de array waarmee je de query samenstelt en uiteindelijk 100x het stukje 'OR ID = #' krijgt? | ||||||
ralfie | donderdag 8 februari 2007 @ 15:21 | |||||
Ja, dat kan met IN
simpel op te bouwen dmv join/implode:
| ||||||
Desdinova | donderdag 8 februari 2007 @ 15:30 | |||||
OOMGGG.. als ik die JOIN eerder had gekend had ik echt uuuuureeen bespaard.. zelfde met de IN ![]() een combinatie van euforie en melancholie. tx! | ||||||
Swetsenegger | donderdag 8 februari 2007 @ 16:02 | |||||
quote:Het is best al regelmatig voorbij gekomen. Ik gebruik hem zelf voor een winkelwagentje systeem. Een sessie array met produkt-id's..... | ||||||
markiemark | donderdag 8 februari 2007 @ 16:20 | |||||
klein probleempje.. heb een tabel gevormd met de resultaten die de database uitpoept. nu wil ik om de rij een variabele weergeven dus zeg maar zo: gegevens rij 1 gegevens rij 2 variabele gegevens rij 3 gegevens rij 4 variabele enz... ik weet dat dit kan met iets als if ($counter % 2){.... } ofzo maar dat werkt niet.. hooeee doe ik dit? | ||||||
markiemark | donderdag 8 februari 2007 @ 16:33 | |||||
heb het als volgt opgelost: heel vies:
| ||||||
Xcalibur | donderdag 8 februari 2007 @ 23:32 | |||||
Ik heb een probleem met MySQL met inladen van een groot csv bestand (100.000+ records) via LOAD DATA. Het inladen an sich werkt, gaat retesnel. Alleen staan de velden in het csv bestand niet op de juiste volgorde en heb ik er een aantal niet nodig in mijn database. Dus kan je aan het einde van het LOAD DATA commando de namen van de velden opgeven (col1, col2, ... ) en daar gaat het dus fout. Volgens de MySQL manual kan ik velden benoemen op de volgende manier: (firstname, @val1, lastname, @val2, etc) waarbij de eerste kolom uit de csv dus in de kolom firstname terecht komt, kolom in lastname, etc. En daar gaat het dus fout ![]() Kolommen komen niet op de juiste plek terecht, in plaats van @val2 pakt hij kolom 11 uit de csv bijvoorbeeld, en er lijkt vrij weinig logica in te zitten. Alle velden in de database zijn varchar(255), dus het is niet zo dat de content niet in het veld past ofzo... Alle tips zijn welkom ![]() | ||||||
Tuvai.net | donderdag 8 februari 2007 @ 23:47 | |||||
CSV naar SQL is vaak een kutkarwei, sowieso als het aantal velden in het CSV bestand en je SQL database niet overeenkomen. Heb je al eens geprobeerd om de overbodige kolommen in je CSV bestand er uit te halen? In PHPMyAdmin zit trouwens ook een ingebouwde functies om CSV bestanden te exporteren. Ik heb hier echter wel weinig goede ervaringen mee. | ||||||
Xcalibur | vrijdag 9 februari 2007 @ 08:28 | |||||
hoe kan ik makkelijk een kolom uit een csv halen met 100.000+ records? Ik kan het bestand niet eens in z'n geheel in Excel openen.... ik wil het bij voorkeur via LOAD DATA doen, omdat het anders zo lang gaat duren (moet ook dagelijks geautomatiseerd gaan gebeuren). Ik ga maar eens om een goed bestand zeuren denk ik | ||||||
super-muffin | vrijdag 9 februari 2007 @ 08:56 | |||||
quote:Wat dus ook zo kan:
zo kun je het ook opschrijven :) | ||||||
markiemark | vrijdag 9 februari 2007 @ 11:04 | |||||
Daar ging ie dus mee op zn bek bij mij... want dat had ik al wel geprobeerd.. | ||||||
ralfie | vrijdag 9 februari 2007 @ 12:16 | |||||
| ||||||
Tuvai.net | vrijdag 9 februari 2007 @ 17:59 | |||||
quote:Ik zit wel eens in SQL dumps te snuffelen die honderden MBs groot zijn. Duurt effe eer ze geopend zijn, maar zodra 't geladen is kun je aan de slag. ![]() Moet ik wel bij zeggen dat ik een leuk computersysteempje heb draaien hier. | ||||||
SkaterSam | vrijdag 9 februari 2007 @ 19:09 | |||||
Even vraagje, ben na een tijdje weer bezig met mijn weblogscriptjes, en nu ben ik bezig met de login. Nu geef ik in de login sessie een Fingerprint mee aan elke user, om te controleren of ze het wel zijn. Maar nu ik er naar kijk lijkt het me niet zo veilig meer...
Dit is de unieke token dat gemaak wordt en telkens gecontroleerd op elke pagina in de Admin. Ik vroeg me af wat jullie er van vonden, en of je tips had wat betreft beveiliging. | ||||||
Chandler | vrijdag 9 februari 2007 @ 19:41 | |||||
tja waarom maak je geen fingerprint van idd die server + IP oid... veel meer betrouwbaar... | ||||||
smesjz | vrijdag 9 februari 2007 @ 21:54 | |||||
quote:Zo'n fingerprint is toch niet uniek? IPV md5 kan je natuurlijk iets sterkers gebruiken als sha256. Maar verder kan je gewoon het IP versleutelen.
Allicht zijn er nog andere manieren te verzinnen om het IP aan een sessie te hangen. Iets als: session.referer_check string session.referer_check contains the substring you want to check each HTTP Referer for. If the Referer was sent by the client and the substring was not found, the embedded session id will be marked as invalid. Defaults to the empty string. session.cookie_httponly boolean Marks the cookie as accessible only through the HTTP protocol. This means that the cookie won't be accessible by scripting languages, such as JavaScript. This setting can effectively help to reduce identity theft through XSS attacks (although it is not supported by all browsers). | ||||||
super-muffin | zaterdag 10 februari 2007 @ 00:59 | |||||
Misschien lukt het niet omdat het zo laat is, maar hoe kan ik 2 strings returnen in een functie? ![]() | ||||||
smesjz | zaterdag 10 februari 2007 @ 10:55 | |||||
quote:Niet. Alleen: return array($stringA,$stringB); In PHP werkt dit bijv niet: echo foobar()[0]; Je moet dan iets gebruiken als dit: $tmp = foobar(); echo $tmp[0] // Geeft $stringA echo $tmp[1] // Geeft $stringB | ||||||
Light | zaterdag 10 februari 2007 @ 11:54 | |||||
quote:
sprintf verwacht daar 2 strings, je geeft er maar 1. | ||||||
smesjz | zaterdag 10 februari 2007 @ 12:05 | |||||
quote:Oeps, zo dus:
| ||||||
Light | zaterdag 10 februari 2007 @ 13:04 | |||||
Yep ![]() | ||||||
super-muffin | zaterdag 10 februari 2007 @ 18:40 | |||||
quote:oke bedankt ![]() | ||||||
JortK | zaterdag 10 februari 2007 @ 21:31 | |||||
Ik zit met de volgende uitdaging :) Ik wil een stuk tekst op een bepaalde plek een link anchor meegeven. Ik heb bijvoorbeeld deze zin:
in mijn form vul ik bovenstaande zin in in een veld als volgt
Nu wil ik de <T> vervangen door <a href="URL">, en de </T> door </a> hoe krijg ik dit op een snelle, cleane manier voor elkaar, ik heb met de str_replace() zitten klooien maar daar kom ik niet helemaal uit :) ? | ||||||
ralfie | zaterdag 10 februari 2007 @ 21:40 | |||||
bijv
| ||||||
JortK | zaterdag 10 februari 2007 @ 21:47 | |||||
quote:Werkt als een tiet thanks! ![]() | ||||||
Swetsenegger | zaterdag 10 februari 2007 @ 21:49 | |||||
met dank aan SuperRembo een url parser die zo'n beetje alles parsed
| ||||||
SuperRembo | zaterdag 10 februari 2007 @ 23:31 | |||||
Helaas heb je er zo niet veel aan omdat alle \\ verneukt zijn ![]() En de class="main" en target="_new" (wat natuurlijk target="_blank" zou moeten zijn) zijn toevoegingen van swets ![]() | ||||||
Swetsenegger | zaterdag 10 februari 2007 @ 23:37 | |||||
![]() Maar het zou wel leuk zijn als die backslash bug eens opgelost wordt in replique | ||||||
Chandler | zondag 11 februari 2007 @ 12:00 | |||||
Weet iemand een manier om javascript zaken uit HTML te filteren? zodat ik heerlijk gewoon een wysiwyg editor kan gebruiken voor wat voor site dan ook maar? ![]() | ||||||
JortK | zondag 11 februari 2007 @ 12:11 | |||||
ik zit weer met een nieuwe uitdaging... eens kijken hoever ik kom, en anders horen jullie het van me ![]() | ||||||
Chandler | zondag 11 februari 2007 @ 14:31 | |||||
vtel! eens! ![]() | ||||||
SuperRembo | zondag 11 februari 2007 @ 14:46 | |||||
quote:"om javascript zaken uit HTML te filteren" ![]() | ||||||
JortK | zondag 11 februari 2007 @ 14:52 | |||||
quote:Ja ik snapte hem ook al niet helemaal ![]() | ||||||
Swetsenegger | zondag 11 februari 2007 @ 14:55 | |||||
dat javascript uit html filteren begreep ik nog, maar het doel... wysiwig editor gebruiken... ontgaat me | ||||||
JortK | zondag 11 februari 2007 @ 14:57 | |||||
quote:Nou ik moet iets scripten wat het volgende doet: Ik heb een input als volgt:
Kortom... plaatjes met een anchor met in willekeur de <BR> tag (lang leve Imagevenue :) ) De rauwe code gebruik ik als input in me form. Wanneer de input geprocessed wordt, moet het volgende gebeuren: * Alle <BR> tags verwijderen. * Na iedere vierde afbeelding, dus na iedere vierde </a> moet een <BR> komen. * Tussen iedere </a><a tag moet komen En in deze volgorde :) | ||||||
Swetsenegger | zondag 11 februari 2007 @ 15:03 | |||||
str_replace waar bij je de <BR> vervangt door een spatie. hoppa, de spaties heb je alvast. En een tellertje mee laten lopen en als die op 4 staat een <br /> parsen | ||||||
Chandler | zondag 11 februari 2007 @ 15:10 | |||||
Ik doel dus op het volgende Er zijn vele varianten van <script> in html, en deze wil ik allemaal kunnen verwijderen op het moment dat een pagina wordt opgeslagen (en dat over wysiwyg editor boeit niet ![]() | ||||||
SuperRembo | zondag 11 februari 2007 @ 15:16 | |||||
Gewoon iets als preg_replace($content, '#<script.*</script>#isU', '')? | ||||||
CraZaay | zondag 11 februari 2007 @ 15:21 | |||||
quote:Ik zou hier heel erg mee uitkijken. Een onclick bevat ook scripting, en css kan ook scripting bevatten (tenminste: op de plaats waar css hoort te staan javascript uitvoeren). Je zult je aardig moeten verdiepen in de materie om dit allemaal af te vangen. | ||||||
Nevermind | zondag 11 februari 2007 @ 15:22 | |||||
Is er een manier om alle aanwezige schijfletters op een windows pc te achterhalen? En is het mogelijk om onderscheid te maken tussen vaste (HD) en losse (CD/diskette) schijven? Met COM werken is geen bezwaar, maar daar heb ik helaas geen kaas van gegeten ![]() | ||||||
Chandler | zondag 11 februari 2007 @ 15:29 | |||||
@SuperRembo & CraZaay: klopt, daarom zoek ik er ook iets tegen ![]() | ||||||
ralfie | zondag 11 februari 2007 @ 19:16 | |||||
quote:ik weet niet of er een betere manier is, maar je kunt in xp iig deze drives uit het register lezen. Bij elke drive staat een vage code die vast ergens voor staat, en waar je waarschijnlijk een hoop informatie uit kan halen, maar ik kom niet verder als de eerste twee karakters, die bij removable hardware altijd '5c' blijken te zijn (bij mij iig). Ze schijnen ook identiek te zijn bij verschillende partities van dezelfde schijf, tis maar dat je het weet. Ik heb zogauw iig niets gevonden over wat de codes precies betekenen.
| ||||||
Chandler | zondag 11 februari 2007 @ 20:47 | |||||
| ||||||
wobbel | zondag 11 februari 2007 @ 22:21 | |||||
= verkeerde topic ![]() | ||||||
mschol | maandag 12 februari 2007 @ 10:00 | |||||
klein vraagje: ik heb een commandline programma en daarvan wil ik de output op het scherm hebben (of in een variable) echter komt de output telkens in mijn errorlog tevoorschijn?
output in errorlog: quote:wie kan me helpen? | ||||||
Swetsenegger | maandag 12 februari 2007 @ 11:36 | |||||
regexp vraag ik heb dit als source
en ik heb dit patern
en die matched
Ik kan geen trim op het result loslaten, dus ik wil graag de regexp aanpassen zodat hij de whitespaces aan het eind negeert. maar uh... hoe :P | ||||||
Nevermind | maandag 12 februari 2007 @ 12:13 | |||||
quote: quote:Bedankt beide! Ik zit tijdelijk even op W2k tot ik XP weer geïnstalleerd heb, dus de eerste oplossing gaat nu niet werken. Het is wel iets netter om het via het register te doen, maar de eerste tijd kan ik tijdelijk Chandlers oplossing gebruiken. Ik kan weer verder, hartelijk dank ![]() | ||||||
SuperRembo | maandag 12 februari 2007 @ 12:25 | |||||
quote:Dan moet je de whitespace opgeven in je regexp, en wel buiten de haakjes:
| ||||||
Swetsenegger | maandag 12 februari 2007 @ 12:53 | |||||
quote:Bedankt! zo simpel. | ||||||
Swetsenegger | maandag 12 februari 2007 @ 13:35 | |||||
Hmz, waarom matched hij ook vanalles voor en na de TD? Ik wil alleen dat wat tussen de td staat ![]() | ||||||
Chandler | maandag 12 februari 2007 @ 15:37 | |||||
quote:Graag gedaan ![]() | ||||||
SuperRembo | maandag 12 februari 2007 @ 18:43 | |||||
quote:
$matches[1] bevat alles wat tussen de 1e set haakjes staat. Dat zou moeten werken. | ||||||
Swetsenegger | maandag 12 februari 2007 @ 19:11 | |||||
quote:Ja precies, ik had hem nodig in ASP en daarmee was het ff zoeken hoe ik de juiste uit de array kon vissen ![]() Bedankt weer! | ||||||
SuperRembo | maandag 12 februari 2007 @ 19:25 | |||||
Waarom stel je die vraag dan hier en niet in dat APS(.NET) topic? (Waar alleen maar ouwe ASP meuk in staat) | ||||||
Swetsenegger | maandag 12 februari 2007 @ 19:27 | |||||
quote:Omdat een regexp een regexp is en ik weet dat hier mensen zitten die veel weten van regexps ![]() Ja ik kan het ook niet helpen dat het intranet nog op ASP3.0 draait ![]() | ||||||
SuperRembo | maandag 12 februari 2007 @ 19:49 | |||||
ASP.NET heeft minimaal Win2k Pro nodig. Dat lukt toch nog wel mag ik hopen? | ||||||
Swetsenegger | maandag 12 februari 2007 @ 20:37 | |||||
quote:Mjah het is geen kwestie van hardware ofzo. Maar het is een gemeente, die veranderen niet zomaar ![]() | ||||||
Light | maandag 12 februari 2007 @ 20:40 | |||||
quote:Ik werk overdag en kom er dan niet aan toe om hier mee te lezen ![]() | ||||||
Xcalibur | dinsdag 13 februari 2007 @ 08:50 | |||||
voor alle regex mensen hier: weet iemand vanaf welke Linux / PHP versie de regex ook special characters kan matchen (ë / à / etc.). Ik had een Windows server met PHP 4.3.11 waar het werkte, maar nu ben ik over naar een Linux server met PHP 4.3.11, en daar werkt het niet ![]() Het gaat dus om regexen als: P{M} enzo ![]() Edit: ik krijg dus deze error: "Warning: preg_match(): Compilation failed: PCRE does not support L, l, N, P, p, U, u, or X" [ Bericht 13% gewijzigd door Xcalibur op 13-02-2007 14:13:35 ] | ||||||
Xcalibur | woensdag 14 februari 2007 @ 18:54 | |||||
dat topic loop als een trein, vraag ik wat, gelijk dood ![]() | ||||||
Darkomen | donderdag 15 februari 2007 @ 08:57 | |||||
Stel dan geen moeilijke vragen ![]() | ||||||
Qunix | donderdag 15 februari 2007 @ 10:32 | |||||
Ik heb een pagina gemaakt. Als ik via index.php?pagina=home surf, krijg ik de pagina te zien zonder fouten. Anders krijg ik wel fouten en dat komt omdat ik ergens in me code, verder op de pagina het volgende heb: "$pagina = $_GET['pagina'];". Als er nou geen inhoud in de var pagina is krijg ik een foutmelding. Hoe zorg ik ervoor dat als er geen inhoud in de var is, dat de pagina url automatisch index.php?pagina=home wordt? Ik heb al wat geprobeerd met headers:
Bvd. | ||||||
super-muffin | donderdag 15 februari 2007 @ 10:38 | |||||
Dat dus. Maar ik zou nog wel ergens de invoer van $pagina controleren. | ||||||
Qunix | donderdag 15 februari 2007 @ 10:42 | |||||
quote:En hoe doe ik dat precies? if (Empty($pagina)) { ? | ||||||
CaPS_ | donderdag 15 februari 2007 @ 10:48 | |||||
Zie ook dit artikeltje op scriptorama. | ||||||
Qunix | donderdag 15 februari 2007 @ 10:52 | |||||
quote:Bedankt. | ||||||
super-muffin | donderdag 15 februari 2007 @ 11:02 | |||||
en vergeet en geen else aan te hangen om de gebruiker door te sturen of iig een nette foutmelding te geven, mocht het voorkomen. | ||||||
Qunix | donderdag 15 februari 2007 @ 11:21 | |||||
quote:
| ||||||
super-muffin | donderdag 15 februari 2007 @ 11:29 | |||||
Maar welke ga je nu gebruiken, die van CaPS of die van jou? | ||||||
Qunix | donderdag 15 februari 2007 @ 11:43 | |||||
quote:Die van mij heeft een bug... Heb jij anders een idee hoe ik de bug kan oplossen in mijn script? Ik snap niet precies het CaPS script ![]() Bvd. | ||||||
Geqxon | donderdag 15 februari 2007 @ 11:54 | |||||
Bingo, als je nog even een 404.php aanmaakt zou het moeten werken. Je default kun je het beste onderaan gooien ![]() | ||||||
Qunix | donderdag 15 februari 2007 @ 12:07 | |||||
quote:Als er nou geen waarde in de pagina is, dan pakt de switch toch default? ![]() | ||||||
super-muffin | donderdag 15 februari 2007 @ 12:16 | |||||
quote:Die van CaPS is het makkelijkst. hier is zijn script met commentaar:
[ Bericht 4% gewijzigd door super-muffin op 15-02-2007 12:24:31 ] | ||||||
Geqxon | donderdag 15 februari 2007 @ 12:18 | |||||
quote:Jij snapt hem ![]() | ||||||
super-muffin | donderdag 15 februari 2007 @ 12:19 | |||||
quote:Klopt, als geen van de cases true is, word de default gepakt. wat je ook kunt doen in het script van Geqxon:
Zo zie je maar, er leiden meer wegen naar Rome :P | ||||||
Geqxon | donderdag 15 februari 2007 @ 12:20 | |||||
En om de integeriteit van die van CaPS te verbeteren:
| ||||||
super-muffin | donderdag 15 februari 2007 @ 12:21 | |||||
ik zou er dan van maken:
| ||||||
Geqxon | donderdag 15 februari 2007 @ 12:22 | |||||
Verder ben ik van mening dat die isset en de in_array controle een beetje teveel van het goede is, want als hij in de array zit zal hij ook vast wel ge-set is.quote:Wel zo slim ![]() | ||||||
Qunix | donderdag 15 februari 2007 @ 12:28 | |||||
quote:Thanks ![]() | ||||||
Qunix | donderdag 15 februari 2007 @ 13:20 | |||||
Als de url "http://localhost/intranet/" is dan krijg ik de volgende foutmelding: Notice: Undefined index: pagina in S:Leerbedrijfwwwrootintranetindex.php on line 72 Lijn 72 tot 73:
Ligt dat aan de php instellingen? Of is het gevaarlijk? | ||||||
Qunix | donderdag 15 februari 2007 @ 13:32 | |||||
fout is weg ![]() | ||||||
Geqxon | donderdag 15 februari 2007 @ 13:37 | |||||
De kans is gering dat het werkt, maar for the sake of safety zou je ook iets als dit even kunnen proberen:
Dan is het in principe onmogelijk om "gekke" pagina's aan te vragen ![]() [ Bericht 11% gewijzigd door Geqxon op 15-02-2007 13:48:15 ] | ||||||
Qunix | donderdag 15 februari 2007 @ 13:56 | |||||
quote:Thanks | ||||||
Qunix | donderdag 15 februari 2007 @ 14:45 | |||||
-edit- [ Bericht 91% gewijzigd door Qunix op 15-02-2007 14:52:52 ] | ||||||
super-muffin | donderdag 15 februari 2007 @ 14:50 | |||||
SELECT * FROM tabelnaam1, tabelnaam2 Misschien heb je wat aan deze site: http://www.tizag.com/mysqlTutorial/ | ||||||
Qunix | donderdag 15 februari 2007 @ 14:53 | |||||
quote:ik had een spelfout ![]() | ||||||
splendor | donderdag 15 februari 2007 @ 15:34 | |||||
Hoe kan ik een variabel op laten tellen binnen een for loop? Dus ik heb bijvoorbeeld het variabel $test1 en binnen de for loop moet ie steeds 1 hoger worden, dus je krijgt een $test2 erbij en een $test3, dus eigenlijk $test$i maar dat werkt dus niet. ![]() Misschien dat ik het met een array kan oplossen maar liever op deze manier als dat gaat. | ||||||
ralfie | donderdag 15 februari 2007 @ 15:43 | |||||
| ||||||
splendor | donderdag 15 februari 2007 @ 15:55 | |||||
Merci. ![]() | ||||||
CraZaay | donderdag 15 februari 2007 @ 16:21 | |||||
Ik vraag me af waarom je dit liever niet met een array wilt doen? | ||||||
splendor | donderdag 15 februari 2007 @ 16:28 | |||||
In het kort wil ik het volgende doen: Ik heb een object category, die heeft een array $clsChilds. Nu wil ik die gaan vullen met waardes uit de database dus ik zeg bijvoorbeeld $clsCategory[0]->clsChilds[0]->clsChilds[0]->addChild(); $clsCategory[0] is de hoofdcategorie en dit is dus een child van een child, bijvoorbeeld: electronica (hoofdcategorie) > gsm > nokia Maar hoe dieper je komt, des te langer wordt het ->clsChilds[0]->clsChilds[0]-> stukje, dus dat wil ik met een for loop laten opbouwen, maar dat pakt ie niet helemaal merk ik. ![]() Is er nog een andere oplossing om dit te doen? | ||||||
hornage | donderdag 15 februari 2007 @ 17:04 | |||||
als je in een treestructuur een specifieke node wil hebben kan je die misschien sneller benaderen door er een searchfunctie in te maken en dan direct de methode daarin aan te roepen. Als je met trees werkt is recursie natuurlijk ook het toverwoord | ||||||
ralfie | donderdag 15 februari 2007 @ 18:00 | |||||
of gebruik pointers:
| ||||||
CaPS_ | donderdag 15 februari 2007 @ 18:01 | |||||
quote:Tja, de standaard PHP configuratie laat je inderdaad toe om de isset() aanroep weg te laten maar ik vind het niet verstandig. Wat ik schreef is logischer, het is immers mogelijk dat de variabele 'pagina' niet is meegegeven in de URL en dat dient dus gecontroleerd te worden voordat je er zomaar gebruik van maakt. Qunix is die situatie zelf ook al tegen gekomen: quote: | ||||||
BaggerUser | donderdag 15 februari 2007 @ 18:46 | |||||
dag, zit me teen klein probleempje. ben onlangso vergestapt naar een nieuwe php, mysql en apache versie en alles werkt in princiepe alleen krijg ik bij sql statements bij sommige nog een foutmelding: de foutmelding: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ' <?php $text = $_POST['text']; $id = $_GET['id']; $sql = "UPDATE paginas SET content = '$text' WHERE id = '$id'"; mysql_query($sql) or die("<h1>Er is iets misgegaan</h1><hr>".mysql_error()); ?> ik weet al wel hoe het komt en heb al een workarround maar weet niet hoe ik de statement kan aanpassen zodat het wel nmormaal werkt. het probleem is namelijk dat ik een stuk text probeer op te slaan, maar de ' uit de text als bijvoorbeeld ergens komma 's worden gebruikt dan loopt hij daar tegen aan in de statement... dubbele quotes gebruiken is een oplossing maar dat gaat gewoon niet altijd iemand een idee hoe ik dit kan verhelpen ? ![]() | ||||||
splendor | donderdag 15 februari 2007 @ 18:54 | |||||
Is de juiste manier om het te doen. :) Volgens mij lost dat het wel op. @hornage, een specifieke node lezen kan ik al wel maar het probleem was om de hele database in te lezen en classes van te maken. @ralfie, bedankt dat ga ik eens proberen! | ||||||
Swetsenegger | donderdag 15 februari 2007 @ 19:39 | |||||
quote:mysql_real_escape_string En $id hoeft waarschijnlijk niet in tussen enkele quotes, want zal een integer bevatten en je variabelen buiten quotes plaatsen
| ||||||
splendor | donderdag 15 februari 2007 @ 19:47 | |||||
quote:Ik heb nu:
Dat werkt. Maar ik wil een oneindig aantal clsChilds, wee tje toevallig ook hoe dat moet? Dit werkt bijvoorbeeld niet:
| ||||||
Chandler | donderdag 15 februari 2007 @ 20:38 | |||||
Minivraag ![]() met dit maak ik van een string een array
echter krijg ik dan
maar eingelijk wil ik $font['Arial'] = "Arial" etc. Weet iemand hoe ik dat simpel kan realiseren ![]() ![]() | ||||||
Chandler | donderdag 15 februari 2007 @ 20:39 | |||||
quote:Toch zou ik $_GET['id'] ff met is_numeric checken, in case of ![]() | ||||||
CraZaay | donderdag 15 februari 2007 @ 20:44 | |||||
quote:explode() en dan array_flip()? En anders even verder kijken dan je neus lang is en http://nl2.php.net/manual/en/ref.array.php eens lezen ![]() | ||||||
Chandler | donderdag 15 februari 2007 @ 20:56 | |||||
CraZaay, array_flip draait gegevens om... maar ik wil niet omdraaien, ik wil dat alle items in deze array dezelfde 'id' als value krijgen.. maar goed, dan maar een paar regels meer
en heb die doc op php.net natuurlijk gelezen voordat ik hier ging posten ![]() | ||||||
Tijn | donderdag 15 februari 2007 @ 21:01 | |||||
Waarom zou je willen dat de key hetzelfde is als de value? Wat is dan nog het nut van ze beiden opslaan? | ||||||
Swetsenegger | donderdag 15 februari 2007 @ 21:03 | |||||
quote:Die discussie is nu al 500 keer gevoerd en het algemene standpunt daarin is ALTIJD USER INPUT CONTROLEREN en dat standpunt blijf ik niet herhalen. Uiteraard ga je met is_numeric controleren, hoewel de grotste angel er met mysql_real_escape_STRING AL WEL UIT IS. | ||||||
CraZaay | donderdag 15 februari 2007 @ 21:19 | |||||
quote:Dat heeft inderdaad geen enkel nut ![]() | ||||||
CraZaay | donderdag 15 februari 2007 @ 21:20 | |||||
quote:Maar aangezien die er volgens mij geen quotes omheen zet, moet je wel heel zeker weten dat het een integer is. | ||||||
slakkie | donderdag 15 februari 2007 @ 21:45 | |||||
quote:Waarom zou je een integer gaan behandelen als een string? Als ie de is_numeric passed betekend het toch dat je deze data kan gebruiken voor je SQL query. Al dan niet met een single quote char eromheen. mysql_real_escape_string lijkt me voor strings alleen, niet voor een integer. | ||||||
Swetsenegger | donderdag 15 februari 2007 @ 22:17 | |||||
quote:mysql_real_escape_string slasht quotes en voorkomt derhalve sqlinjection. Ook integers als string behandelen is een goed idee, als je eens een keer slipt met je userinput controlle zou er wel eens een 'tje in je 'integer' kunnen staan. | ||||||
CraZaay | donderdag 15 februari 2007 @ 23:11 | |||||
quote:Nee, dat kan er dus niet in staan als is_numeric() true is ![]() | ||||||
Light | donderdag 15 februari 2007 @ 23:28 | |||||
quote:Op zich is het ook een nadeel van mysql dat strings in een numeriek veld kunnen worden geplaatst. | ||||||
Xcalibur | donderdag 15 februari 2007 @ 23:29 | |||||
quote:niemand die hier nog wat zinnigs over te zeggen heeft? ![]() | ||||||
slakkie | donderdag 15 februari 2007 @ 23:31 | |||||
quote:Ik volg je niet echt.. Ik zie de gehele reden voor de mysql_real_escape_string niet. Het is een integer, geen string. En zelfs al is het een string, dan heb je die mysql_real_escape_string niet nodig. Een input van '9 moet ie er zoiezo uitfilteren en op barfen, daar hoef je niet nog eens een \'9 van te maken. Dit is immers geen int. Ik zat ff te spelen met verschillende manier om te checken of iets een int is.
Zoals je kan zien, heb ik die hele mysql_real_escape_string niet nodig. Die is_numeric is mij te los qua wat ie als integer zit, ik zou hem iig daarvoor nooit gebruiken. Ik zou dus altijd met een regexp checken of het een integer is. Wellicht dat intval() ook nog gebruikt kan worden, ik heb ermee getest, maar die vind 9.9 ook een int, en daar ben ik het niet mee eens, dat is een double/float, en valt dus buiten de boot. | ||||||
Tuvai.net | vrijdag 16 februari 2007 @ 06:08 | |||||
Als ik met SQL queries werk, gebruik ik gewoon intval() voor integers en mysql_real_escape_string() voor strings. ![]() | ||||||
Chandler | vrijdag 16 februari 2007 @ 09:07 | |||||
quote:Zie quote CraZaay quote:Geheel fout! Mijn eigen geschreven parser werkt met values, in een database heb ik een veld waarin ik de naam van het font bewaar. dus niet een ID maar de NAAM!. Mijn parser kan on the fly een option select list maken van een array en tevens de 'geselecteerde' optie selectere aan de hand van de 'ID!' maar in dit geval is het dus geen id maar een 'variabel!' ![]() ![]() | ||||||
wobbel | vrijdag 16 februari 2007 @ 17:08 | |||||
Is er een bug in PHP 4.3.9 ofzo? (jaja, oude versie ik weet maar ze willen nietu pdaten in de productie omgeving ![]() Als ik dit script heb:
Als ik $SettleLand zou renamen naar $HeleAndereVariable dan is 't probleem opgelost, maar in PHP 5.2.0 bestaat dit probleem niet namelijk....en in de changelogs kan ik (zo gauw) niks vinden. | ||||||
splendor | vrijdag 16 februari 2007 @ 17:16 | |||||
Controleer je php.ini eens of register_globals aan staat, die moet uitstaan en in php5 kun je die geloof ik niet eens meer aanzetten, dus dat zou het verklaren. ![]() register_globals zorgt ervoor dat je een global (session is dit geval) kunt gebruiken alsof het een normaal variable is, dus hij maakt van $_SESSION['SettleLand'] autoatisch al $SettleLand, en die is inderdaad "Nederland" geworden in jou script. Overigens raar dat $_SESSION['SettleLand'] ook nederland wordt maar vooruit, zal de andere kant ook wel zo op werken. ![]() | ||||||
wobbel | vrijdag 16 februari 2007 @ 17:17 | |||||
quote:Verbaasde mij ook, want dit vond ik echt wel heel strange ![]() register_globals = On [ Bericht 3% gewijzigd door wobbel op 16-02-2007 17:27:11 (poep in m\'n hoofd) ] | ||||||
Xcalibur | vrijdag 16 februari 2007 @ 18:32 | |||||
register_globals staat aan in een productieomgeving? da's wel heel slecht... ![]() | ||||||
Swetsenegger | vrijdag 16 februari 2007 @ 18:52 | |||||
quote:Je gaat er maar vanuit dat je daadwerkelijk de userinput controleert. Zowel mysql als php zijn zo inconsistent als de tyfus met strings en integers, dus is 1 fuck-up voldoende om sql injection toe te staan. Ik begrijp jouw weerstand niet tegen een extra safety maatregel als mysql_real_escape_string. Zeker niet in toepassingen zoals de meeste hier maken waar performance geen groot issue is. Want eigenlijk is dat de enige reden die ik kan bedenken voor je aversie tegen een failback systeem ![]() Naast natuurlijk het feit dat je simpelweg userinput moet controleren. | ||||||
Swetsenegger | vrijdag 16 februari 2007 @ 18:53 | |||||
quote: quote: | ||||||
splendor | vrijdag 16 februari 2007 @ 19:10 | |||||
Is het misschien iets om voor iedereen hier een functie te schrijven die veilig met $_GET's omgaat? Ik wil wel een begin geven door mijn voorlopige functie hier neer te zetten, kan iemand anders hem uitbreiden en er over discussiëren tot we een goeie hebben. :)
Misschien een idee dat je aangeeft of het een int, string of beide moet/mag zijn en dat ie daar dan ook op controleert. | ||||||
Swetsenegger | vrijdag 16 februari 2007 @ 20:08 | |||||
quote:[php/mysql] SQL Injection, Maqic Quotes genoeg? http://www.phpfreakz.nl/artikelen.php?aid=106 [ Bericht 8% gewijzigd door Swetsenegger op 16-02-2007 20:13:15 ] | ||||||
G.Fawkes | vrijdag 16 februari 2007 @ 20:12 | |||||
Ik heb vandaag jinzora installeerd op mijn ubuntu server en hij doet het redelijk. twee foutmeldingen blijven verschijnen:
en
Is er een bepaalde app die ik nog zou moeten installeren of dergelijke want hij zegt wel permission denied, maar chmod staat iig goed... | ||||||
Chandler | vrijdag 16 februari 2007 @ 20:49 | |||||
-- edit: werkte wel, tiep fout -- | ||||||
slakkie | vrijdag 16 februari 2007 @ 22:38 | |||||
quote:Ik neem niet aan dat de data al gevalideerd is. En in mijn check weet ik dat de data een integer is (in de regexp accepteerd ie ook doubles en floaters). Maar ik weet dat de data correct is en daarna alles met mijn data doen. Het is gechecked, alles wat ik daarna doe is op mijn conto en heeft dan niks meer te maken met users die SQL injection willen doen. GUI Check and sanatize data Do stuff with data and many more. Je hoeft in dat geval niet op meerdere plekken je data te valideren, dat is immers al gedaan. Je onderliggende klasses/functies hoeven dan alleen te checken of de input parameters goed zijn. Dwz, ik verwacht een string, en als ik dit niet krijg, error. quote:Nee, ik begrijp je redenatie achter de safety maatregel. Ik snap alleen niet waarom je dit met een integer doet. Het is namelijk geen string. Dat is mijn enige commentaar. | ||||||
Swetsenegger | vrijdag 16 februari 2007 @ 22:41 | |||||
quote:Totdat er een keer niet gechecked is quote:Tja, volgens php is $a="1" ook een integer, of probeert het in ieder geval als integer te parsen. | ||||||
slakkie | vrijdag 16 februari 2007 @ 22:58 | |||||
quote:Ja, als het niet gechecked wordt is er toch ergens een grove fout gemaakt - die er uitgehaald had moeten worden in de unit test of end-to-end test. $a = "1"; $a = intval($a); zou dit volgens mij moeten oplossen, daar heb je geen extra functie voor nodig. jij hebt een andere mening hierover dan ik. Laten we het daarbij houden. Heb zo'n idee dat we niet dichter bijelkaar gaan komen. | ||||||
Swetsenegger | vrijdag 16 februari 2007 @ 23:04 | |||||
quote:We zitten al op 1 lijn. Je moet user input controleren. Maar het wordt wel eens vergeten he, zeker in work in progress. Dus wat is er erg om in elke query een mysql_real_escape_string op te nemen om slips op te vangen? Dat is alles wat ik zeg. Je blijft contine maar zeggen dat het niet nodig is als je userinput controleert. Maar dat riep ik al in mijn eerste post waar ik mysql_real_escape_string voorstelde, dus is de hele discussie blijkbaar nutteloos. | ||||||
Light | vrijdag 16 februari 2007 @ 23:07 | |||||
quote:Ja, php is loosely typed. Dus na $a = "1"; $b = 2 + $a; is $b == 3. En na $a = "1"; $b = 2 . $a; is $b == "21"; | ||||||
JeRa | vrijdag 16 februari 2007 @ 23:15 | |||||
Voor het bovenstaande verhaal is een vrij simpele oplossing; + Zorg ervoor dat dat je variabelen van het juiste type zijn, eventueel door ze te casten. + Prepared statements. + Gooi je database vol met constraints. + Vang verkeerde user input op met een nette waarschuwing. Knappe jongen als je het dan nog weet te verklooien ![]() | ||||||
slakkie | vrijdag 16 februari 2007 @ 23:27 | |||||
quote:Hier zijn we het allemaal mee eens denk ik ![]() | ||||||
Tijn | vrijdag 16 februari 2007 @ 23:28 | |||||
quote:Ik ben persoonlijk meer fan van een doodsbedreiging en een flinke scheldpartij ![]() | ||||||
Swetsenegger | vrijdag 16 februari 2007 @ 23:30 | |||||
quote:"Denk je GODVERDOMME dat ik een mongool ben ofzo met je kut injection!!!!" | ||||||
Tuvai.net | zaterdag 17 februari 2007 @ 00:21 | |||||
Zo had ik vroegâh een IP ban functie gemaakt op m'n site. Zodra je IP gebanned was kreeg je bij een poging m'n site te bekijken een paar popups die zichzelf weer gingen openen, en kreeg je de "You are an idiot" en "Hey everybody, I'm looking at gay porno!" Flash klassiekertjes voor je kiezen. ![]() | ||||||
Chandler | zaterdag 17 februari 2007 @ 08:23 | |||||
quote: ![]() ![]() ![]() | ||||||
wonderer | zaterdag 17 februari 2007 @ 18:30 | |||||
Is er een makkelijker manier om te controleren of een bepaald record al bestaat dan met een SELECT en daarna een if(mysql_num_rows($result)!=0)(UPDATE) else (INSERT)? | ||||||
JeRa | zaterdag 17 februari 2007 @ 18:48 | |||||
quote:INSERT ... ON DUPLICATE KEY UPDATE met een primary key? ![]() | ||||||
Light | zaterdag 17 februari 2007 @ 18:50 | |||||
quote:Na een Update of een Insert kun je met mysql_affected_rows() opvragen hoeveel rijen er zijn aangepast. Als dat 0 is dan kun je met de andere functie in de herkansing ![]() | ||||||
Light | zaterdag 17 februari 2007 @ 18:51 | |||||
quote:Die is nog beter ![]() [ Bericht 5% gewijzigd door Light op 17-02-2007 18:53:59 (Nieuwe functie.) ] | ||||||
wonderer | zaterdag 17 februari 2007 @ 18:57 | |||||
quote:Mijn server draait 4.1.12 dus dat moet kunnen. Kun je in een tabel meer keys hebben? Ik heb nu de kolom "ID" als key maar ik wil zoeken op een ander veld. | ||||||
JeRa | zaterdag 17 februari 2007 @ 18:59 | |||||
quote:Dat kan, de ON DUPLICATE KEY clausule is geldig wanneer er een PRIMARY of UNIQUE key overtreden wordt, dus bij een nieuwe PK maar een al bestaande UNIQUE key gaat dat gewoon werken ![]() | ||||||
wonderer | zaterdag 17 februari 2007 @ 19:06 | |||||
Oh, bah, ik bedenk me net dat het een veel op veel relatie is... (karakters in verhalen. Een karakter kan in meerdere verhalen zitten en een verhaal kan meerdere karakters hebben). Dus UNIQUE gaat niet werken. Het moet de combinatie van karakter en verhaal zijn... Hm, nou ja, die on duplicate kan ik nog wel voor andere dingen gebruiken. Dus helemaal nutteloos was het niet ![]() | ||||||
JeRa | zaterdag 17 februari 2007 @ 19:20 | |||||
quote:Je weet dat je een UNIQUE constraint ook op meerdere velden tegelijk kunt plaatsen? Dus, in jouw geval, een combinatie van karakter en verhaal? ![]() | ||||||
Light | zaterdag 17 februari 2007 @ 19:21 | |||||
quote:Een key kan best op meer dan 1 veld slaan. | ||||||
wonderer | zaterdag 17 februari 2007 @ 19:31 | |||||
quote:Nee? Leg uit ![]() Ik heb het nou trouwens veranderd naar een cvs-stukje in een veld dat ik dan bij het ophalen met explode kan doen en dan is het ook klaar. Maar vertel vooral over dat unique gedoe want het komt regelmatig terug. | ||||||
JeRa | zaterdag 17 februari 2007 @ 19:44 | |||||
quote:Je kunt een UNIQUE constraint leggen op één veld (UNIQUE(a)) of op meerdere velden (UNIQUE(a, b)). In dat geval mogen er geen twee records voorkomen waarbij a én b hetzelfde zijn ![]() | ||||||
wonderer | zaterdag 17 februari 2007 @ 19:55 | |||||
Ooh, okee, dat doe je in de query en niet in de tabel zelf. Thanks. | ||||||
JeRa | zaterdag 17 februari 2007 @ 19:59 | |||||
quote:Als je het over die unique constraints hebt: die doe je wel in de tabel zelf ![]() | ||||||
SuperRembo | zaterdag 17 februari 2007 @ 22:36 | |||||
quote:Dat lijkt heel erg op REPLACE. Heeft dat hetzelfde effect? | ||||||
Light | zaterdag 17 februari 2007 @ 22:44 | |||||
quote:Replace is eigenlijk een onding. Sowieso doet replace geen update. Als een waarde al bestaat dan wordt'ie doodleuk uit je database gegooid en er vervolgens opnieuw ingezet. | ||||||
Likkende_Lassie | zondag 18 februari 2007 @ 13:55 | |||||
hoe kan je in 1 keer met de functie rename alle bestanden die bijvoorbeeld op *.txt eindigen wijzigen? Of bestanden die beginnen met een bepaalde tekst... heb '*' al geprobeerd, dat pakt i niet. | ||||||
Geqxon | zondag 18 februari 2007 @ 15:42 | |||||
Leuke opgave, ben even aan het knutselen geweest :) | ||||||
Siegfried | maandag 19 februari 2007 @ 00:56 | |||||
Kan ik htmlentities() ook weer omkeren? Edit: gevonden ![]() html_entity_decode() | ||||||
Siegfried | maandag 19 februari 2007 @ 01:38 | |||||
WTF.. ![]() Ik post een formulier naar een andere pagina. Als ik echter niets invul, dan zou ie dit moeten doen:
Echter, hij vervangt hierbij de waarde $post dus niet, en het resultaat blijft leeg. In dit geval:
Werkt het wel, als ik bla invoer.. Hoe kan dit nou? ![]() | ||||||
Geqxon | maandag 19 februari 2007 @ 01:41 | |||||
Probeer eens
| ||||||
Siegfried | maandag 19 februari 2007 @ 01:44 | |||||
Hmm ook niet.. Maar ik heb het nu wel op een andere manier werkend gekregen. Of naja.. Geen andere manier, maar door de check eerder in het script uit te laten voeren.. Toch bedankt! | ||||||
wonderer | maandag 19 februari 2007 @ 02:04 | |||||
-lamaar- [ Bericht 96% gewijzigd door wonderer op 19-02-2007 02:27:43 ] | ||||||
wobbel | maandag 19 februari 2007 @ 10:46 | |||||
Ik had het al een keer gevraagd, maar kwam er niet echt uit ![]() Ik heb meerdere producten in een tabel ( in dit geval 3 stuks ) maar nu wil ik dat je de volgorde kan aanpassen. Dat ik bijv. op kolom "Rank" kan sorteren op ASC/DESC bijv. Als ik bij de GH2138 op het pijltje omhoog doe dat de GH2138 op nr 2 komt en de GH2122 1tje naar beneden gaat, maar hoe laat ik dat nou mooi werken met PHP en MySQL? ![]() | ||||||
Siegfried | maandag 19 februari 2007 @ 11:05 | |||||
Ik vermoed dat je een rang veld moet toevoegen in je DB. GH2108 = 1 HG2122 = 2 GH2138 = 3 Als je op dat pijltje klikt moet je dat veld updaten, en van 3 -> 2 maken, en van 2 -> 3 maken. ![]() | ||||||
wobbel | maandag 19 februari 2007 @ 11:11 | |||||
quote:Krijg ik dan geen problemen als ik bijv. enkele producten verwijder en dan later wil updaten mbv rangs? Dan zou je in sommige gevallen wel + 10 moeten doen....of als ik een product verwijder alle BOVENLIGGENDE (dus hoger dan de rank van het verwijderde product) - 1 "Als je op dat pijltje klikt moet je dat veld updaten, en van 3 -> 2 maken, en van 2 -> 3 maken. ![]() Jah heel leuk, ik kan bij 1 veld wel 2 + 1 = 3 doen, maar hoe moet ik dan die 3 - 1 doen? Gewoon 2 + 1 = 3, dan zoeken waar RANG 3 is en daar - 1? En als ik een product toevoeg, moet ik de hoogste rang pakken en daar + 1 he? | ||||||
Geqxon | maandag 19 februari 2007 @ 11:24 | |||||
Twee producten kunnen toch ook dezelfde rang hebben? Dan sorteer je simpelweg verder op naam ![]() | ||||||
Likkende_Lassie | maandag 19 februari 2007 @ 11:32 | |||||
quote:Thanks! ![]() Wat als ik nou alles wil renamen / zien wat begint met iets? Edit, nevermind, logisch, gewoon dat in imagepatern zetten...deed ik net ook maar had spelfoutje gemaakt, vandaar ![]() | ||||||
Siegfried | maandag 19 februari 2007 @ 11:34 | |||||
quote:Uh, nee.. Gewoon: UPDATE `tabel` SET `rang` = '3' WHERE `id` = 'GH2122 ' LIMIT 1 UPDATE `tabel` SET `rang` = '2' WHERE `id` = 'GH2138' LIMIT 1 Lijkt mij ![]() | ||||||
JeRa | maandag 19 februari 2007 @ 11:35 | |||||
quote:Hou zoals eerder gezegd een rang of positie bij: PK=45, pos=1 PK=63, pos=2 PK=19, pos=3 Stel, je wilt PK=45 naar beneden schuiven. Dan doe je dit als volgt: 1) Haal de positie van PK=45 op (pos1 = 1) 2) Haal de PK van pos2 = pos1 + 1 op (PK = 63) 3) Zet de positie van PK=45 op (pos1 + 1) (pos1 = 2) 4) Zet de positie van PK=63 op pos1 (pos2 = 1) Kortom, je hebt primary of unique keys nodig ![]() Verder wil je er misschien voor zorgen dat je deze twee stappen hebt: 0) LOCK TABLES ... ... 5) UNLOCK TABLES Om te voorkomen dat er meerdere mensen tegelijk de rangen gaan aanpassen en dat 't kapot gaat ![]() | ||||||
Geqxon | maandag 19 februari 2007 @ 11:36 | |||||
quote:Het dollarteken in de string is puur dat het op .txt moet eindigen. Zo uit mijn roestige hersenpan is het volgens mij zo dat als het ergens mee moet beginnen, dat het dollarteken dan aan het begin moet. | ||||||
JeRa | maandag 19 februari 2007 @ 11:56 | |||||
quote:Nee, dakje ^ is op het begin van de string, $ op het eind. ![]() | ||||||
Geqxon | maandag 19 februari 2007 @ 11:58 | |||||
quote:Je hebt helemaal gelijk, ik was net bezig mijn stoffige schoolboeken over regular expressions er op na te slaan. ![]() | ||||||
Xcalibur | maandag 19 februari 2007 @ 12:15 | |||||
quote:ik voeg altijd een veld 'ORDER' toe, waarbij ieder record een waarde krijgt met een meervoud van 10. Dus 10 / 20 / 30 / 40. Als je dan een record verplaatst doe je die ORDER + 11 (of -11), zodat hij voorbij de de volgende komt. Daarna update je in een loop *alle* records in de tabel zodat ze weer netjes een waarde met een veelvoud van 10 hebben ![]() | ||||||
veldmuis | maandag 19 februari 2007 @ 12:19 | |||||
Hoi. Ik heb een textdocumentje waar ik wat data uit wil halen, en daar wil ik wat mee gaan doen. Het textdocumentje staat gewoon op de server, in dezelfde dir als m'n PHP bestand. Hoe heet dat wat ik wil gaan doen, ik wil gaan zoeken op php.net maar heb geen idee op wat voor commando oid ik moet zoeken ![]() | ||||||
Tijn | maandag 19 februari 2007 @ 12:22 | |||||
Je zou bijvoorbeeld fopen() kunnen gebruiken, veldmuis. | ||||||
veldmuis | maandag 19 februari 2007 @ 12:33 | |||||
quote:Tnx, ben wat verder nu idd! Alleen nu komt het: in het document staat wat data waarde1: de inhoud van waarde 1 etc. De inhoud is altijd van een variabele lengte, maar wordt wel afgesloten door een </p> Die </p> zou ik dus als eind kunnen pakken, en dat 'waarde1:' als beginding. Maar hoe lees ik nou de waarde die daartussen staat uit? ![]() fgets en fread lijken niet de oplossing als ik het zo zie op php.net? | ||||||
Tijn | maandag 19 februari 2007 @ 12:36 | |||||
Nou, je zou met fgets() wel de regel kunnen uitlezen en dan die regel door een sjieke reguliere expressie halen om je data eruit te filteren. Hoe dat zit met die reguliere expressie moet je maar even aan iemand anders vragen, daar ben ik niet zo handig in ![]() | ||||||
JeRa | maandag 19 februari 2007 @ 12:37 | |||||
quote:Jawel, met die twee functies kun je een bestand inlezen en voor de rest is het pure string manipulatie ![]() Het simpelst is strpos() gebruiken om de positie van substrings in strings te vinden ![]() | ||||||
Swetsenegger | maandag 19 februari 2007 @ 12:48 | |||||
quote:
niet getest | ||||||
wobbel | maandag 19 februari 2007 @ 12:48 | |||||
quote:dat gaat dus helemaal niet werken, want als ik bij 1 product rank + 1 doe, hoe weet ik dan welk product er dan 1 af moet? Maargoed, het werkt nu prima ![]() | ||||||
Swetsenegger | maandag 19 februari 2007 @ 12:51 | |||||
Ow kijk ook naar file en file_get_contents. Vind ik persoonlijk altijd eenvoudiger dan fread | ||||||
veldmuis | maandag 19 februari 2007 @ 12:53 | |||||
Ik zou toch graag een iets hardere schop in de goeie richting willen ![]() Van stringmanipulatie en reguliere expressies snap ik niets ![]() Als ik nou de inhoud tussen Waarde1: en </P> zou willen uitlezen, hoe doe ik dat dan? ![]() | ||||||
JeRa | maandag 19 februari 2007 @ 12:55 | |||||
quote:
| ||||||
veldmuis | maandag 19 februari 2007 @ 13:04 | |||||
Dank allen! Ik ga verder proberen! ![]() Nou ben ik alleen nog nieuwsgierig wat de [1] achter $matches/$match doet? | ||||||
JeRa | maandag 19 februari 2007 @ 13:06 | |||||
quote:$matches is in eerste instantie een lege array maar wordt gevuld met strings door de functie preg_match(). Daarna is $matches[1] gelijk aan de eerste subset in de regular expression in preg_match() (als je dat niet snapt maakt het niet uit ![]() ![]() | ||||||
Tuvai.net | maandag 19 februari 2007 @ 13:07 | |||||
$matches is een array, en in het voorbeeldje hierboven word die array aangevuld door de preg_match() functie. Waardes in een array() worden aangeroepen door $array_naam[0], $array_naam[1], $array_naam[2], enz. | ||||||
Swetsenegger | maandag 19 februari 2007 @ 13:08 | |||||
quote:^waarde1: betekent toch dat de string daarmee begint? | ||||||
Geqxon | maandag 19 februari 2007 @ 13:10 | |||||
quote:Zou dat dan geen [0] moeten zijn? | ||||||
JeRa | maandag 19 februari 2007 @ 13:12 | |||||
quote:Mjah, als test. Maar als hij ook waarde2, waarde3 etc wil matchen moet er toch een andere expression komen ![]() | ||||||
Swetsenegger | maandag 19 februari 2007 @ 13:14 | |||||
quote:Maar het betekent toch ook dat de string er zo uit moet zien: "Waarde1:....." Op het moment dat de string niet met Waarde1 begint matched hij toch niet? dus de ^ moet toch gewoon weg? | ||||||
veldmuis | maandag 19 februari 2007 @ 13:15 | |||||
"Call to undefined function preg_match()" Betekent dat dat m'n PHP de preg_match() niet ondersteunt of dat ik gewoon iets fout doe in de code? ![]() | ||||||
Swetsenegger | maandag 19 februari 2007 @ 13:16 | |||||
quote:
Dan zou je php versie onder 3.0.9 moeten liggen en DAT lijkt me niet. | ||||||
veldmuis | maandag 19 februari 2007 @ 13:17 | |||||
PHP Version 5.0.5, maar het zou zomaar kunnen dat het een ERG beperkte PHP is. | ||||||
CraZaay | maandag 19 februari 2007 @ 13:18 | |||||
quote:Je zou denken dat eerste, maar het lijkt me sterk dat je met PHP 3 bezig bent ![]() | ||||||
Swetsenegger | maandag 19 februari 2007 @ 13:19 | |||||
quote: quote:Post je code eens dan. | ||||||
Tiemie | maandag 19 februari 2007 @ 13:23 | |||||
quote:Of het is om een wazige reden zonder pcre gecompiled ![]() --without-pcre-regex | ||||||
JeRa | maandag 19 februari 2007 @ 13:25 | |||||
quote:Dat zou eventueel kunnen, voor de size-obsessed compileerders onder ons die denken genoeg te hebben aan de ereg_*-functies ![]() | ||||||
veldmuis | maandag 19 februari 2007 @ 13:26 | |||||
quote:Ik heb deze gepakt:
quote:Ow, dan is dat het. De reden is ruimtegebrek. Gok ik. | ||||||
veldmuis | maandag 19 februari 2007 @ 13:27 | |||||
quote:Is het daarmee te doen? ![]() | ||||||
Swetsenegger | maandag 19 februari 2007 @ 13:32 | |||||
quote:http://nl2.php.net/manual/nl/function.ereg.php Volgens mij de preg_match alleen vervangen door ereg als ik de manual even snel scan. | ||||||
veldmuis | maandag 19 februari 2007 @ 13:36 | |||||
Ik heb 'm als module erin geduwt, en dat lijkt te werken! ![]() | ||||||
wobbel | maandag 19 februari 2007 @ 13:36 | |||||
Kan ik ook een join doen in een delete? Dus dat ik gegevens verwijder uit 2 tabellen die een relatie met elkaar hebben dmv ID? | ||||||
Swetsenegger | maandag 19 februari 2007 @ 13:36 | |||||
quote:Ja dat kan | ||||||
Geqxon | maandag 19 februari 2007 @ 13:45 | |||||
quote:MySQL en subqueries? Ik leer telkens wat nieuws hier ![]() | ||||||
JeRa | maandag 19 februari 2007 @ 13:46 | |||||
quote:Subqueries worden al erg lang door MySQL ondersteund, maar met een DELETE is het gewoon een simpele JOIN ![]() | ||||||
Geqxon | maandag 19 februari 2007 @ 13:53 | |||||
quote:Ik heb mijzelf in 2004/2005 MySQL aangeleerd, en één van de grote punten was de slechte support voor subqueries. Maar zoals ik al zei: Ik leer hier constant ![]() | ||||||
wobbel | maandag 19 februari 2007 @ 13:58 | |||||
quote:Zo dus:
| ||||||
Swetsenegger | maandag 19 februari 2007 @ 14:01 | |||||
quote:Precies. Probeer het eerst uit met SELECT FROM <rest van je query> en als dat werkt gewoon je SELECT FROM vervangen door delete | ||||||
JeRa | maandag 19 februari 2007 @ 14:02 | |||||
Overigens, in sommige andere RDBMS'en wordt het bovenstaande gedaan door foreign key constraints met een ON DELETE-clausule ![]() ![]() | ||||||
Swetsenegger | maandag 19 februari 2007 @ 14:08 | |||||
quote:Interbase (firebird) doet dat ook begreep ik | ||||||
veldmuis | maandag 19 februari 2007 @ 14:08 | |||||
quote:Werkt inderdaad...MAAR! Er staat nog crap voor Waarde1:, hoe zorg ik dat-ie die crap negeert? :+. | ||||||
veldmuis | maandag 19 februari 2007 @ 14:09 | |||||
Oh, en er komt ook nog een waarde2 achteraan, na weer wat crap ![]() | ||||||
Geqxon | maandag 19 februari 2007 @ 14:15 | |||||
Een verkapte UTFS post: http://weblogtoolscollection.com/regex/regex.php Staat al weer maanden tussen mijn bookmarks, een erg handig overzicht ![]() | ||||||
veldmuis | maandag 19 februari 2007 @ 14:16 | |||||
Dank, ik ga lezen! ![]() | ||||||
wobbel | maandag 19 februari 2007 @ 14:20 | |||||
Betreffende query: DELETE FROM SHOP_Products INNER JOIN SHOP_Products_Lang ON ( SHOP_Products.IdProduct = SHOP_Products_Lang.ProductId ) WHERE SHOP_Products.SubcategoryId = '1' MySQL error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'INNER JOIN SHOP_Products_Lang ON ( SHOP_Products.IdProduct = ' at line 3 ![]() | ||||||
wobbel | maandag 19 februari 2007 @ 14:27 | |||||
= kan weg ![]() | ||||||
Swetsenegger | maandag 19 februari 2007 @ 14:30 | |||||
quote:Vreemd, zou gewoon moeten werken. Geen komma's quotes of andere ongein verkeerd? http://www.electrictoolbox.com/article/mysql/cross-table-delete/ | ||||||
JeRa | maandag 19 februari 2007 @ 14:43 | |||||
Er zit een verschil in aanroep. In Swetsenegger's voorbeeld wordt er DELETE tabel1.*, tabel2.* FROM ... gedaan ![]() | ||||||
Swetsenegger | maandag 19 februari 2007 @ 14:47 | |||||
quote:Inderdaad. Maar zelf delete ik ergens in een script ook met een join en heb ik volgens mij hetzelfde gedaan als Wobbel in eerste instantie....Maar kan ook een leftjoin zijn...Ik zal vanavond even kijken. | ||||||
veldmuis | maandag 19 februari 2007 @ 15:54 | |||||
Ik kom er nog niet helemaal uit met die regex. Ben al wat wijzer geworden, maar nu... Ik heb nu
De waarde komt er nu uit, maar er komt ook een </P> mee. Hoe fix ik dat nu? Edit: Kut, dat was een nieuwe regel. Het begin pakt-ie goed op, het eind niet. Betekent dat ik weer aan de gang kan, weet ik waar het fout gaat ![]() [ Bericht 11% gewijzigd door veldmuis op 19-02-2007 16:01:04 ] | ||||||
veldmuis | maandag 19 februari 2007 @ 16:29 | |||||
Hmm, ben eruit intussen. Ik begrijp dat je moet escapen, maar wat is nou het verschil tussen / en #? Ik las overal / maar jullie gaven in jullie voorbeeld # aan, en dat werkt dus wel. | ||||||
veldmuis | maandag 19 februari 2007 @ 17:26 | |||||
Okay, andere vraag. ![]() dmv een shell_exec haal ik met wget het bestand op waar ik de data uit wil halen, dat gaat prima, maar daardoor krijg ik allemaal bagger in de pagina. Kan ik de output die wget geeft ergens anders heen sturen zodat het niet op m'n scherm komt? | ||||||
Swetsenegger | maandag 19 februari 2007 @ 17:32 | |||||
quote:die # is alleen start patroon, mag bijna elk teken zijn ![]() | ||||||
Swetsenegger | maandag 19 februari 2007 @ 17:33 | |||||
quote:eh... niet de zooi parsen maar bewerken? | ||||||
veldmuis | maandag 19 februari 2007 @ 18:30 | |||||
Eh, geen idee? Hoe doe je dat? ![]() | ||||||
slakkie | maandag 19 februari 2007 @ 18:51 | |||||
veldmuis: wget -q "http://forum.fok.nl" | ||||||
veldmuis | maandag 19 februari 2007 @ 18:53 | |||||
Niet eens aan gedacht, natuurlijk! Thanks! | ||||||
wonderer | dinsdag 20 februari 2007 @ 00:00 | |||||
Als ik een lange tekst heb (7000 woorden of zo) en ik wil alleen de eerste pakweg 250 woorden laten zien, hoe kan ik dat het beste aanpakken? explode lijkt me een beetje omslachtig... | ||||||
slakkie | dinsdag 20 februari 2007 @ 00:13 | |||||
Denk zoiets als dit: http://nl2.php.net/manual/nl/function.chunk-split.php Eerste comment laat precies zien wat jij wilt. | ||||||
Tuvai.net | dinsdag 20 februari 2007 @ 00:15 | |||||
substr() ![]() Of anders in je opslag/database bijvoorbeeld een veld voor het intro stukje (1 of 2 eerste allinea's) en een veld voor de rest. |