-J-D- | zondag 13 april 2008 @ 11:11 | |||
![]() 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, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56,57 Zie ook: Tutorials: Deze OP en instructies voor nieuw topic: http://wiki.fok.nl/index.php/OP/PHP | ||||
-J-D- | zondag 13 april 2008 @ 11:11 | |||
Laatste vraag:quote: | ||||
qu63 | zondag 13 april 2008 @ 11:12 | |||
hodfr, heb d'r net ook een gemaakt ![]() | ||||
qu63 | zondag 13 april 2008 @ 11:13 | |||
sluit deze maar: [PHP/(My)SQL] voor dummies - deel 58 | ||||
-J-D- | zondag 13 april 2008 @ 11:15 | |||
Ik heb een tabel met getallen erin. Die getallen geven het aantal rijen in een tabel in mn db aan. Nu wil ik dat als je over het getal heen gaat er een klein schermpje overheen komt met wat informatie over dat getal. Dat kan natuurlijk met onmouseover enz, maar nu wil ik in dat schermpje geen eigen tekst hebben, maar een tekst gegenereerd door een stukje php. Weet iemand wel script ik daarvoor kan gebruiken? De mouseover-scipts die ik ken, laten geen php toe in dat schermpje. | ||||
Thomass | zondag 13 april 2008 @ 11:18 | |||
quote:de td tag heeft natuurlijk title als property die je gewoon kan setten. En als het in je eigen stijl moet zijn of dynamisch gewoon iets in elkaar draaien met javascript/ajax | ||||
Tarabass | zondag 13 april 2008 @ 11:57 | |||
tvp | ||||
qu63 | zondag 13 april 2008 @ 12:02 | |||
quote:
Zo heb ik het iig gedaan ![]() Kleruen zijn aan te passen aan je website ![]() En ipv een link kan het ook een div, td, of wat dan ook zijn ![]() | ||||
-J-D- | zondag 13 april 2008 @ 12:06 | |||
quote:Ik moet nu weg, maar ga er van de week naar kijken Mijn dank is in ieder geval groot. ![]() | ||||
JortK | zondag 13 april 2008 @ 12:09 | |||
Zijn we weer ![]() | ||||
RiDo78 | zondag 13 april 2008 @ 12:29 | |||
@Beerten: Een index doet precies wat het zegt. Je kunt het vergelijken als een index achter in een boek. Je kiest het onderwerp uit de lijst en je ziet welke pagina('s) je moet hebben om het te vinden. Bij een database-index is dat net zo. Door een index toe te passen hoeft de database niet de hele tabel door te nemen, maar kan het meteen de juiste rij pakken. Als voorbeeld even een foutje die ik zelf nog recentelijk had gemaakt. Ik heb een applicatie die een logfile op disk schrijft en na 1000 regels roteert. Nu wil ik die in de database hebben om er allehande queries op los te laten. Maar ik wil ook de nieuwste regels hebben, dus ik neem ook de nog niet geroteerde logfile mee waar nog in geschreven kan worden. Om te zorgen dat er geen dubbelle entries in de logfile komen, controleer ik het timestamp en een ander stuk van de logregel. Het inlezen van een logfile duurde ca. 11 seconden, en dat is gewoon lang. TE lang. Dus na wat zoekwerk kwam ik er achter dat de database ca. 0,01 seconde nodig had voor een query. Met 1 query per logregel en dat x 1000 zit je dus al snel op 10 seconden aan database-tijd. Toen ik zag dat daar de traagheid vandaan kwam was het probleem in no-time opgelost: even een index aanleggen op het timestamp-veld van de tabel en nu wordt een complete logfile in minder dan een seconde de database ingepropt. De query tijd is afgenomen naar 0,00039 seconden. Nu kun je je natuurlijk afvragen waarom er niet standaard een index op elk veld zit. En dat is simpel, als je iets wegschrijft naar de database, dan moeten alle indexen bijgewerkt worden. Dus hoe meer indexen, hoe sneller je kunt lezen, maar hoe trager je iets weg kunt schrijven. | ||||
#ANONIEM | zondag 13 april 2008 @ 12:37 | |||
klen vraagje stel ik heb een telefoonnummer 0472123456 hoe verwijder ik de 0472 gedeelte en vervang ik het door 32472 | ||||
RiDo78 | zondag 13 april 2008 @ 12:38 | |||
quote:Hoezo zou een javascript PHP aan moeten kunnen? Je kunt je PHP toch zo schrijven dat hij dat er gewoon inwrot?
Zo kun je tekst en variabellen in elk javascriptje prakken. | ||||
RiDo78 | zondag 13 april 2008 @ 12:45 | |||
quote:
En als $telefoonnummer een array is dan wordt $nieuw_nummer ook een array. Je kunt dus ineens een hele reeks van die nummers er doorheen rammen. | ||||
#ANONIEM | zondag 13 april 2008 @ 12:53 | |||
quote:thx | ||||
beerten | zondag 13 april 2008 @ 13:12 | |||
quote:Thnx! | ||||
SuperRembo | zondag 13 april 2008 @ 14:05 | |||
quote:Dan moet je wel zeker weten dat '0472' maar 1 keer in het telefoonnummer voor komt, anders gaat het fout. | ||||
Tarabass | zondag 13 april 2008 @ 14:36 | |||
quote:Inderdaad, beter zou zijn een substring of iets dergelijks te gebruiken.. | ||||
Chandler | zondag 13 april 2008 @ 14:38 | |||
tijd voor pizza ![]() | ||||
Tarabass | zondag 13 april 2008 @ 14:47 | |||
quote:Hey, het is hier geen slowchat ![]() | ||||
DionysuZ | zondag 13 april 2008 @ 16:02 | |||
quote:
| ||||
DionysuZ | zondag 13 april 2008 @ 16:10 | |||
maarrrrr.. als je ook telefoonnummers met een ander kengetal gaat parsen dan krijg je daar weer problemen mee ![]() | ||||
RiDo78 | zondag 13 april 2008 @ 19:26 | |||
okay, dan doen we het anders... er zijn meer wegen die naar rome leiden:
Dit knipt de eerste 4 tekens weg (tellen begint bij 0) en plakt daar $nieuw voor. Er wordt dan niet opgelet wat dat voor cijfers zijn. Eventueel kun je ook nog kijken of die eerste 4 tekens wel het oude nummer zijn:
Maar beide methodes werken maar met 1 nummer tegelijk. | ||||
slakkie | zondag 13 april 2008 @ 19:30 | |||
quote: Als je het kengetgal wil wijzigen doe je toch simpel: preg_replace('/^020/', '010', $tel_no); Zal alleen de waarde veranderen indien het telefoonnummer begint met 020. | ||||
qu63 | zondag 13 april 2008 @ 19:30 | |||
kan je dan niet beter gewoon de 0 vervangen door 32? Ik neem aan dat je een telefoonnummer om wilt zetten naar een internationaal nummer? | ||||
JeRa | zondag 13 april 2008 @ 19:50 | |||
quote:Jij hebt best wel een vet user ID, powers of two ![]() | ||||
Thomass | zondag 13 april 2008 @ 22:35 | |||
quote:Ach de jouwe is 2 2log 47509, ![]() | ||||
-J-D- | zondag 13 april 2008 @ 22:47 | |||
quote:Het werkt als een tiet. Tering veel werk om het op mijn site te implementeren. Het moet op zo'n 150 plaatsen geplaatst worden ![]() Maar goed, het werkt ![]() | ||||
qu63 | zondag 13 april 2008 @ 22:52 | |||
quote:Die div kan je overal op je site neergooien, dus ook in een footer ofzo ![]() Als je die footer dan toch al include is het makkelijk ![]() en verder gewoon je linkjes aanpassen ![]() | ||||
Janteh | maandag 14 april 2008 @ 00:02 | |||
Goed, ik wil mijn volgende projectje maar eens in een framwork gaan maken, nadat ik ontdekt heb dat die toch wel tot mooie dingen in staat zijn. De vraag is nu alleen nog welke? Ik heb de volgende bekeken en zijn het eigenlijk net allemaal niet. Ik heb een paar eisen: CakePHP: Mooi gebruik van MVC, ook PHP 5. De documentatie is op zich redelijk maar mist wel een wat uitgebreidere uitleg en goede voorbeelden. Ook denk ik dat ik te weinig kan met al die automatische koppelingen tussen de database en de models, zonder er goede documentatie over te hebben. Ook mis ik eigenlijk wel een paar goede extra basisfunctionaliteiten waar je wat aan hebt. Code Igniter: Ook een mooi framework, helaas wel nog PHP 4. De documentatie is goed, ook denk ik mede doordat er een bedrijf achter zit, dit kan natuurlijk ook een nadeel zijn (?). Werkt prettig alhoewel ik dan wel weer het automatisch laden van functies mis zoals bij Kohana, komt denk ik ook mede doordat het nog in PHP 4 geschreven is (of niet?). Kohana: Is een fork van Code Igniter en is wel op PHP 5 gebouwd. Ziet er heel goed uit maar de documentatie laat echt heel erg te wensen over en het is zo te zien nog niet heel erg oud, dus hoe het er in de toekomst mee verder gaat bevalt ook nog maar te zien natuurlijk. Op het eerste gezicht met een beetje spelen ziet het er iig wel veelbelovend uit. Toch maar weer overwegen. Zend Framework: Heel kort bekeken, volgens mij out-of-the-box niet zo'n compleet framework als de anderen, wel heel erg goede documentatie maar het staat me eigenlijk gewoon niet aan. Iemand nog ervaringen, suggesties of iets anders waardoor ik een goede keuze kan maken? Ik weet het echt niet.. | ||||
DionysuZ | maandag 14 april 2008 @ 00:06 | |||
quote:aw natuurlijk ^ startwaarde, ff vergeten joh =) | ||||
Xcalibur | maandag 14 april 2008 @ 08:29 | |||
Ik wil een functie maken waarmee ik een string / code kan genereren op basis van een pattern. Een soort omgekeerde regex dus ![]() ![]() Ik kan natuurlijk at random codes gaan genereren, en die net zo lang tegen m'n pattern matchen totdat ik een hit heb, maar dat is natuurlijk hopeloos inefficient... iemand suggesties? | ||||
slakkie | maandag 14 april 2008 @ 08:51 | |||
Je wilt jezelf gaan pijnigen? Waarom wil je regular expressions reversen? | ||||
JeRa | maandag 14 april 2008 @ 08:56 | |||
quote:Om bijvoorbeeld wachtwoorden a.d.h.v. een custom format te genereren? Ik denk dat het wel te doen is, maar er is voor zover ik weet geen PHP functie voor. Dus ofwel zelf implementeren ofwel old school strings aan elkaar plakken totdat je het gewenste formaat hebt ![]() | ||||
dik_voormekaar | maandag 14 april 2008 @ 09:13 | |||
quote:Is de smarty template geen optie? | ||||
JeRa | maandag 14 april 2008 @ 09:21 | |||
quote:Dat is een template engine en geen framework ![]() | ||||
dik_voormekaar | maandag 14 april 2008 @ 09:21 | |||
quote:Oops..., sorry. | ||||
Xcalibur | maandag 14 april 2008 @ 09:31 | |||
quote:Correct... en om reeksen in een bepaald format te genereren ![]() | ||||
slacker_nl | maandag 14 april 2008 @ 10:18 | |||
Kijk eens naar de source code van deze Perl module en rewrite het naar PHP: http://search.cpan.org/~s(...)lib/String/Random.pm | ||||
slacker_nl | maandag 14 april 2008 @ 11:00 | |||
quote:Misschien ben je deze sites al tegengekomen met je kleine onderzoek: http://www.phpframeworks.com/index.php5 http://www.phpit.net/article/ten-different-php-frameworks/ http://www.mustap.com/phpzone_post_73_top-10-php-mvc-frameworks http://www.phpclasses.org(...)-PHP-frameworks.html | ||||
Xcalibur | maandag 14 april 2008 @ 11:21 | |||
quote:Hee, dat ziet er wel interessant uit ![]() | ||||
ursel | maandag 14 april 2008 @ 16:38 | |||
quote:www.pradosoft.com schijnt ook wel erg goed te zijn. Alleen door tijdgebrek niet voldoende tijd aan kunnen besteden jammergenoeg. | ||||
ursel | maandag 14 april 2008 @ 16:40 | |||
Ooh.. trouwens ook weer een vraagje ![]() Wat is nu de beste methode om een SOAP call uit te gaan voeren? Ik weet dat je PHP SOAP hebt. Momenteel maken we hier nu nog gebruik van NuSOAP. maar ik begreep dat dit nu niet een van de betere is. Via cUrl kan je ook nog een soort van SOAP versturen, zij het dat je dan de gegevens in de url zelf moet knallen. Wat is jullie advies om te gebruiken?? | ||||
Xcalibur | maandag 14 april 2008 @ 17:21 | |||
ik gebruik NuSOAP, naar mijn weten is dat juist wel een van de betere. Voor zover ik weet is deze ook heel wat uitgebreider dan de PHP SOAP library. Bovendien vind ik het ook wel een voordeel dat je NuSOAP kunt gebruiken zonder dat hier speciale libraries op de betreffende server nodig zijn ![]() Volgens mij werkt NuSOAP overigens ook via cURL? | ||||
Tiemie | maandag 14 april 2008 @ 23:18 | |||
Nadeel van Nusoap is dat een aantal namen van classes overeen komen met (standaard?) php5-modules. ![]() | ||||
JeRa | maandag 14 april 2008 @ 23:23 | |||
quote:Zal ook heel blij zijn als PHP6 stable wordt, namespaces zijn geweldig. De keren dat ik een XMLWriter/Reader class heb geschreven zonder te weten dat ze ook al in PHP5 aanwezig zijn, zijn helaas talloos ![]() | ||||
SuperRembo | maandag 14 april 2008 @ 23:40 | |||
quote:Moet PHP6 jouw gebrek aan kennis van PHP compenseren? ![]() | ||||
JeRa | maandag 14 april 2008 @ 23:43 | |||
quote:Geef toe, voorgedefiniëerde global classes zijn gewoon ernstig nutteloos en in zo'n geval alleen maar hinderlijk ![]() | ||||
Chandler | dinsdag 15 april 2008 @ 08:07 | |||
Een paar kleine vraagjes over XML. Ik moet een XML script schrijven voor iemand, echter deed ik dit eerst met eregi (zoeken en uitlezen). Nu wil ik het juist aanpakken. Dus een paar vragen over XML. Hoe kan ik het beste een XML bestand uitlezen Hoe kan ik een bepaald element en zijn nodes uitlezen? Hoe kan ik een bepaald element zoeken? Ik heb de documentatie van php.net geraadpleegd maar werdt er niet echt wijs van ![]() | ||||
GSMboy | dinsdag 15 april 2008 @ 08:10 | |||
Beter zoeken: http://nl2.php.net/xml Allemaal handige functies om XML bestanden uit te lezen. | ||||
ursel | dinsdag 15 april 2008 @ 08:52 | |||
Mja, zit er nu een beetje naar te kijken en was verteld dat de ontwikkeling van NuSOAP al hele tijd stil lag, maar zie nu dat er in nov. 2007 een nieuwe versie is gekomen. Ga er toch even mee aan de gang.. ![]() | ||||
Chandler | dinsdag 15 april 2008 @ 08:54 | |||
Ik ben ook zo'n blaataap met lezen hé maar ik heb een voorbeeld gevonden die mij kon helpen.. Bedankt GSMboy | ||||
Skyrise | dinsdag 15 april 2008 @ 10:09 | |||
Wat is er mis met mijn query? Het gedeelte TOT de AND werkt, maar ik wil van het te submitten formulier dat hij alleen de 'volgorde' +1ed van de entries in db portfolio waar de waarde 'afdeling' hetzelfde is als de te submitten entry $result=db_query(sprintf("UPDATE portfolio SET volgorde = volgorde +1 WHERE volgorde >= '%s',$form['volgorde'] AND `afdeling` = $form['afdeling'])); | ||||
SuperRembo | dinsdag 15 april 2008 @ 10:23 | |||
quote:Kijk eens naar de query die uitgevoerd wordt, dus naar de uitkomst van sprintf(). Dan zie je vast zelf wel wat er mis is. | ||||
Chandler | dinsdag 15 april 2008 @ 11:46 | |||
Ik zeg het wel even voor SR ![]() de fout zit um hier WHERE volgorde >= '%s',$form['volgorde'] AND `afdeling` = $form['afdeling'])); oftewel dit er van maken
| ||||
slakkie | dinsdag 15 april 2008 @ 11:57 | |||
quote:Nog lelijker, sprintf en dan nog $string . "andere string doen"... IEEK.
| ||||
WyriHaximus | dinsdag 15 april 2008 @ 12:01 | |||
quote:* WyriHaximus zucht
![]() EDIT: En ook wat slakkie zegt ![]() | ||||
Skyrise | dinsdag 15 april 2008 @ 13:33 | |||
Hehe,... goedzo, het werkt alleen nog niet. Hij update nu uberhaupt geen volgorde meer. `afdeling` en `volgorde` vallen wel allebei onder dezelfde entry (parent), waarom ik dus geen simpele mutatie (+1 voor alles gelijk aan en hoger voor `volgorde`) voor alles met dezelfde `afdeling` kan maken snap ik niet. ![]() | ||||
SuperRembo | dinsdag 15 april 2008 @ 13:40 | |||
quote:Maar wat is nou de query die uitgevoerd wordt? Maak er eens dit van zodat je kan zien wat erg werkelijk gebreurt:
`volgorde` is een integer, maar de parameter krijgt wel quotjes? Is `afdeling` ook een int, want die parameter krijg geen quotjes? [ Bericht 3% gewijzigd door SuperRembo op 15-04-2008 13:48:05 ] | ||||
Skyrise | dinsdag 15 april 2008 @ 14:16 | |||
afdeling is een text, volgorde een integer ![]() De warning die ik krijg is: UPDATE portfolio SET volgorde = volgorde +1 WHERE volgorde >= '17', AND `afdeling` = projects Warning: Cannot modify header information - headers already sent Ik stuur echter geen headers volgens mij, ff dubbelchecken. edit:: Ik heb gekeken waar die headers dan verzonden worden, maar die andere .php waar hij naar verwijst gaat in die line over thumbs, dus dat is het iig niet. [ Bericht 30% gewijzigd door Skyrise op 15-04-2008 14:34:42 ] | ||||
wobbel | dinsdag 15 april 2008 @ 17:37 | |||
Ik had deze code, maar die werkte niet:
Ik kreeg deze foutmelding: quote:In het vorige topic had ik dit probleem gepost, en iemand kwam met deze onderstaande code:
maar die geeft deze foutmelding: quote:Unknown table SHOP_Subcategory?? De tabelnaam is gewoon goed hoor :P | ||||
SuperRembo | dinsdag 15 april 2008 @ 18:49 | |||
Oh, dan moet het "DELETE s" zijn in plaats van "DELETE SHOP_Subcategory". Na DELETE moet dus de alias worden gebruikt. | ||||
Intrepidity | dinsdag 15 april 2008 @ 20:36 | |||
MySQL vraagje.. Ik ben bezig een database uit een oude webapplicatie over te zetten naar een nieuwe applicatie. De oude situatie is zo: Er is een tabel met hierin bedrijven. Onder andere bedrijfsnaam, website, email, bezoekadres, postadres, enzovoort. Deze moet overgezet worden. In de nieuwe applicatie is er ondersteuning voor meerdere filialen per bedrijf, oftewel, er is een 1 op n relatie ontstaan met bedrijf_id als eigenschap van een filiaal. Dit betekent dus dat ik de oude tabel moet gaan opsplitsen in 2 tabellen, waarbij het toegewezen ID uit de bedrijventabel, in het veld bedrijf_id in de filialentabel geplaatst moet worden, samen met de rest van de velden.. Geen idee hoe ik dit simpel kan oplossen.. Tips? Alvast bedankt ![]() | ||||
Xcalibur | dinsdag 15 april 2008 @ 20:43 | |||
Scriptje maken wat de oude tabel leest, en daar doorheen loopt... In de nieuwe bedrijventabel een record aanmaken, ID opvragen en de hele meuk in de filialen tabel importeren? Om hoeveel bedrijven gaat het? En komt er helemaal geen info in de bedrijventabel? ![]() | ||||
bartoz | dinsdag 15 april 2008 @ 23:20 | |||
Dit hieronder is een script om de pagina's goed of af te keuren. Als ze gekeurd zijn krijgen de leden een email, maar de afzender is md108183@geenpunt.nl (dus volgens mij onbekend) Hoe kan ik dit veranderen? quote:Alvast bedankt | ||||
Intrepidity | dinsdag 15 april 2008 @ 23:33 | |||
quote:De bedrijventabel bevat: id, naam, branche, website, algemeen emailadres Filialentabel bevat: id, bedrijf id, postadres (meerdere velden), bezoekadres, telefoon, fax, and so on.. Het gaat om ongeveer 18,000 records.. Het liefste zou ik het met pure SQL oplossen, maar voor zover ik heb kunnen vinden gaat dat niet helemaal lukken en moet ik inderdaad terugvallen op een PHP-scriptje.. In ieder geval bedankt voor het meedenken ![]() Ik hoopte zelf dat er iets als een SELECT INTO met een join-mogelijkheid bestond, maarja, dat zal wel tegenvallen ![]() | ||||
svierkant | dinsdag 15 april 2008 @ 23:36 | |||
quote:Je gebruikt de functie mail() om je berichten te verzenden. Als je deze pagina doorleest, kom je al een stuk verder. | ||||
bartoz | dinsdag 15 april 2008 @ 23:50 | |||
quote:Ok bedankt....maar is het niet gewoon 1 zin die ik er tussen kan zetten? | ||||
qu63 | dinsdag 15 april 2008 @ 23:52 | |||
quote:wat staat er in var.php? ik denk dat daar de afzender vermeldt staat, of in de php.ini | ||||
bartoz | dinsdag 15 april 2008 @ 23:55 | |||
<?php //variables for topsites $adminemail="***@*****.com"; ?> Dit staat er in var.php | ||||
svierkant | woensdag 16 april 2008 @ 00:31 | |||
quote:Ten eerste weet ik niet wat er allemaal in de bestanden staat, waaronder var.php. Je zult je iets meer in de code moeten verdiepen dan je nu doet. | ||||
bartoz | woensdag 16 april 2008 @ 00:39 | |||
var.php staan voor de rest geen dingen die te maken hebben met de email. | ||||
slakkie | woensdag 16 april 2008 @ 11:17 | |||
quote:http://www.geeklog.net/faqman/index.php?op=view&t=38 http://forum.mamboserver.com/showthread.php?t=15068 | ||||
qu63 | zaterdag 19 april 2008 @ 11:18 | |||
Ik weet dat je met PHP-auth je website kan 'beveiligen' (aub geen discussie of het wel veilig genoeg is, daar gaat het me nu niet om ![]() | ||||
qu63 | zaterdag 19 april 2008 @ 11:20 | |||
whoops ![]() | ||||
fate | zaterdag 19 april 2008 @ 15:11 | |||
Ik heb 2 vragen maar ben niet eens zeker of het wel onder php zelf valt. Op een website die ik gemaakt heb gebruikte ik tot nu toe altijd om bijvoorbeeld naar een artikel te gaan een link zoals deze: www.blabla.com/blabla.php?id=965 Op fora zoals hier bijvoorbeeld op fok worden echter links gebruikt zoals bijvoorbeeld: forum.fok.nl/topic/1145006. Ik vraag me echter af hoe je links maakt zoals de laatste? Dat je dus geen gebruik maakt van ?id=965 maar dat je gewoon /1145006 hebt. Ik zou namelijk de 2e manier willen gebruiken maar heb geen idee hoe je dat moet doen. M'n vraag is nogal onduidelijk maar hopelijk begrijp je wat ik bedoel ![]() En dan nog een vraagje dat ook over links gaat: (Als voorbeeld neem ik nu een artikel vanop de frontpage) Op de FP staat momenteel een artikel dat 'Operatie onder hypnose in plaats van verdoving' noemt. Als je naar de link kijkt van deze pagina zie je dat de pagina -Operatie-onder-hypnose-in-plaats-van-verdoving.html heet. M'n vraag is nu hoe je ervoor zorgt dat een html pagina aangemaakt wordt (of hoe het ook juist werkt) met als naam de titel van je artikel? Het is veel praktischer om de titel in de link te hebben dan louter een id dat verwijst naar je database. Bedankt alvast! | ||||
Five_Horizons | zaterdag 19 april 2008 @ 19:59 | |||
Ik heb al een beetje zitten Googlen en het lijkt erop dat wat ik wil, mogelijk is, maar ik wil hier toch iets meer zekerheid over: Stel: er is een Excel-bestand met verschillende werkbladen (ongeveer 15) met daarin alle klantgegevens. De verschillende werkbladen zijn met elkaar gelinkt. Zo is snel te zien welke producten de klanten hebben. (werkblad 1 -> NAWT-gegevens klant, werkblad 2 geeft product X aan en in dit werkblad staan dus alle verschillende producten X met de klantnummers. Werkblad 3 gaat over product Y, enz. enz.) Elk product heeft ook nog een bepaalde provisiestructuur. Product X bij producent A geeft 10% van de omzet, product X van producent B geeft 15% van de omzet. Enz. enz. Elk verkocht product wordt dagelijks toegevoegd en dus automatisch gelinkt aan de klant en alle andere gegevens van deze klant. Uiteindelijk worden hieruit ook alle management-rapportages gehaald. Nu wordt er gestoeid met een nieuw softwarepakket (database) en het ervoor zorgen dat dit vlekkeloos verloopt, is een ellenlang traject, wat nog maanden gaat duren. De uiteindelijke vraag is dan ook: is het mogelijk om deze Excel-sheet m.b.v. PHP in te lezen in MySQL, op een dusdanige manier dat alle koppelingen behouden blijven en er nog steeds dezelfde managementsrapportages uit te extraheren zijn? Het afgelopen jaar heb ik me mede bezig gehouden met het bouwen van een applicatie, die volledig liep op PHP/MySQL. Niet de programmeer-kant, maar inhoudelijk. Daar heb ik veel mooie dingen van gezien (ik kan nog steeds niet programmeren, maar ik kan PHP inmiddels wel enigszins 'lezen') en vandaar dat ik vermoed dat dit een perfecte oplossing zou zijn. ![]() | ||||
Swetsenegger | zaterdag 19 april 2008 @ 20:05 | |||
Hmz, eenvoudig wordt het in ieder geval niet. | ||||
Swetsenegger | zaterdag 19 april 2008 @ 20:07 | |||
quote:Dat worden user friendly urls genoemd. Met apache (webserver software) is dat vrij eenvoudig te realiseren dmv een zogenaamde mod rewrite. quote:Mjah, als je via het cms de pagina opslaat schrijft je de url zo weg en dmv een stukje scripting zorg je dat het goed komt. | ||||
Five_Horizons | zaterdag 19 april 2008 @ 20:26 | |||
quote: Dat zat er dik in ![]() Ik weet niet of het echt duidelijk is, zo zonder voorbeeld. Maandag zal ik sowieso de sheets uitpluizen op daadwerkelijke links. Ik vermoed dat het louter invullen van de velden niet zo'n probleem is (toch?). Maar dat is slechts een kopie van alle velden op de werkbladen. Er is dan wel een database, maar een hele platte. Als alle werkbladen op een bepaalde manier aan elkaar gekoppeld zijn, moet het herschrijven van deze koppeling toch relatief eenvoudig zijn? (ik kan me voorstellen dat ik het nu heel erg simplificeer) Dan kunnen de gegevens die in MySQL staan op dezelfde manier gekoppeld worden. De output is dan weer verhaal twee..... Mja.... inderdaad.... niet eenvoudig ![]() | ||||
HenryHill | zaterdag 19 april 2008 @ 20:42 | |||
quote:Sowiezo klinkt bovenstaand verhaal niet iets waar je Excel voor zou moeten gebruiken, een database is dan beter op z'n plaats. Dan: Ja, het is mogelijk om een Excel-bestand als een ODBC datasource te gebruiken, zodat je vanuit PHP (of MySQL) die data kunt benaderen, maar: deze methode is verre van stabiel en kent behoorlijk wat beperkingen. Ik zou deze methode afraden, en ervoor kiezen om de data uit Excel te exporteren naar bijvoorbeeld CSV, en deze in MySQL in te lezen. Houdt er rekening mee dat je de werkbladen niet 1 op 1 over wilt nemen als tabellen in je database, en dat je dus eerst een goed database-schema (= tabelstructuur) zult moeten hebben. Hiervoor zul je de data moeten herschikken zodat het correspondeert met de vorm zoals je het in de database wilt hebben. Dit kan je voor de export (dus in Excel) of na de import (als je de 'ruwe' data in tijdelijke tabellen hebt geladen) doen - ik zou je de eerste optie aanraden. Ook zullen de formules die je in je Excel-bestand hebt gedefinieerd verloren gaan tijdens de migratie. Hiervoor zul je een database-oplossing moeten verzinnen (stored procedures, of views met calculated fields, bijv.). En ik weet niet hoe jullie je management-rapportages nu maken, maar de kans is vrijwel 0% dat je deze 1 op 1 over kunt nemen als je de data in een database hebt zitten. 't Wordt een flinke klus iig. | ||||
HenryHill | zaterdag 19 april 2008 @ 20:47 | |||
quote:Nee en nee. Een database is heel wat anders als een Excel-werkblad. De data bestaat in beide gevallen in rijen en kolommen, maar daar houdt de vergelijking ook echt op. Zie bijv. deze link over hoe een database conceptueel opgezet moet worden. | ||||
Five_Horizons | zaterdag 19 april 2008 @ 20:58 | |||
quote:Ik weet wat een database is. Het excel-bestand wordt daadwerkelijk als database gebruikt. Dat het geen database is, is wat anders. Toch is een eenvoudig Excel-bestand in te lezen in MySQL. De centrale vraag hier is dan ook of het in dit geval mogelijk is. Als dat blijkbaar niet zo is, dan is het niet zo. ![]() | ||||
SuperRembo | zaterdag 19 april 2008 @ 21:02 | |||
quote:Simpel, het laatste stuk na de / wordt gewoon genegeerd (m.b.v. mod rewrite). Daar kan je dus invullen wat je maar wil. | ||||
HenryHill | zaterdag 19 april 2008 @ 21:04 | |||
quote:Wat bedoel je hier precies mee? Zijn de gegevens in dat Excel-bestand volledig gestructureerd, en stelt elke rij een apart element voor? Worden de gegevens programatisch toegevoegd en uitgelezen (bijv. via een ODBC koppeling die je Excel-bestand doet voorkomen als een database)? Disclaimer: ik wil niemand hier de les lezen, ik probeer zo efficient mogelijk een zo duidelijk mogelijk beeld van je probleem boven water te krijgen. Dat idee wil nog wel eens ondergesneeuwd raken in het spervuur van vragen en adviezen, dus vandaar dat ik het maar even expliciet vermeldt. ![]() [ Bericht 11% gewijzigd door HenryHill op 19-04-2008 21:16:24 ] | ||||
Five_Horizons | zaterdag 19 april 2008 @ 21:04 | |||
quote: Daar is men van bewust en dat is ook de reden dat een programma is aangeschaft. Alleen: ik vraag me af of die aanschaf goed is geweest (het programma is verre van af, zo blijkt nu) Het duurt nu al maanden (wellicht zelfs jaren) om de database gereed te maken voor het excelbestand. quote: Die methode is mij inderdaad bekend. In de gevallen waar ik dat heb moeten gebruiken, was het een Excel-bestand met maar één enkel werkblad. quote: Logisch. De werkbladen zelf zijn uiteraard niet de tabellen. Die staan zelf op de werkbladen, in dit geval. Ik moet mezelf nog meer inlezen in wat het Excel-bestand nu daadwerkelijk doet, misschien stel ik de vraag ook een week te vroeg ![]() quote:Ook dat klinkt logisch voor me. quote:Dat lukt inderdaad sowieso niet. Ik ga er van de week nog eens goed mee stoeien en mocht ik daar iets zinniger antwoorden kunnen geven, dan meld ik me weer. Bedankt voor de input, i.i.g. ![]() | ||||
Swetsenegger | zaterdag 19 april 2008 @ 21:07 | |||
quote:je zal sowieso de aparte werkbladen als losse bestanden moeten opslaan. Vervolgens is ze stuk voor stuk inlezen niet zo'n probleem, vervolgens zal je de key's moeten aanbrengen. Je moet je alleen wel afvragen of de database structuur optimaal is. De rapporten kan je vervolgens in PHP opbouwen. | ||||
HenryHill | zaterdag 19 april 2008 @ 21:22 | |||
quote:PHP zou kunnen, maar wat je ook zou kunnen overwegen is een aparte reporting tool te gebruiken zoals Crystal Reports of Microsoft Reporting Services. Van de laatste weet ik iig dat deze in theorie ook overweg kan met andere RDBMSen dan MS SQL, maar in hoeverre dat in de praktijk ook echt praktisch is, durf ik niet te zeggen. Enne, een Excel sheet met grafiekjes e.d., die zijn data uit de database haalt, dat is natuurlijk ook een mogelijkheid. ![]() | ||||
wobbel | zaterdag 19 april 2008 @ 22:47 | |||
Ik had net m'n PHPMyAdmin op Afrikaans staan per ongeluk ![]() "Jou SQL-navraag is suksesvol uitgevoer" "Beloer data" "Kies asb. 'n databasis" ![]() | ||||
fate | zondag 20 april 2008 @ 20:59 | |||
quote:Dat eerste ga ik even moeten nakijken hoe ik het juist moet doen. Dat tweede is eigelijk logisch, dom dat ik daar niet op kwam hoe je dat kan maken ![]() Bedankt! | ||||
Chandler | maandag 21 april 2008 @ 07:04 | |||
quote:Leuk he dat afrikaans... best leuk om te lezen (engels/ oud nederlands door elkaar ![]() | ||||
slacker_nl | maandag 21 april 2008 @ 15:30 | |||
Excel is om te zetten naar csv, csv is zo in een DB te importeren, easy does it. | ||||
qu63 | maandag 21 april 2008 @ 16:02 | |||
quote:(n)iemand? ![]() | ||||
jusdOrange | maandag 21 april 2008 @ 17:07 | |||
Verduidelijk je vraag eens? | ||||
qu63 | maandag 21 april 2008 @ 17:25 | |||
quote:http://nl2.php.net/manual/en/features.http-auth.php daarme kan je dingen instellen zoals
nu wil ik alleen een pagina, die niet van mijzelf is, includen in een pagina zodat ik niet steeds username en ww in hoef te vullen | ||||
RiDo78 | dinsdag 22 april 2008 @ 08:11 | |||
Het ligt eraan hoe de pagina zijn authenticatie regelt. Als dat door middel van een form gebeurd, dan zul je de inhoud van dat form moeten versturen en een cookie accepteren voordat je de bewuste pagina kunt downloaden. Als het door middel van de webserver-authenticatie gebeurd (dus met een popup waar je gebruikersnaam/wachtwoord in moet vullen) dan kun je de pagina simpelweg opvragen door alle gegevens in de URL mee te geven: http://username:password@webserver:port/dir/page.html | ||||
qu63 | dinsdag 22 april 2008 @ 09:27 | |||
quote:zo is het dus niet, wel zoals je hieronder beschrijft quote:en dat werkt dus helaas niet. | ||||
RiDo78 | dinsdag 22 april 2008 @ 10:03 | |||
quote:Bij gebrek aan PM, om welke website gaat het? | ||||
qu63 | dinsdag 22 april 2008 @ 10:51 | |||
quote:voordat ik het vertel, wil ik wel weten waarvoor je het wilt weten ![]() username en password krijg je sowieso niet ![]() | ||||
RiDo78 | woensdag 23 april 2008 @ 09:02 | |||
Username en password heb ik niet nodig, ik wil gewoon even kijken hoe die authorisatie onderwater geregeld is, om te voorkomen dat we langs elkaar heen praten. | ||||
qu63 | woensdag 23 april 2008 @ 10:24 | |||
quote:pm ![]() | ||||
SuperRembo | woensdag 23 april 2008 @ 10:27 | |||
quote:Je kunt een socket openen. Dan stuur je zelf de headers en leest daarna de response uit. | ||||
qu63 | woensdag 23 april 2008 @ 10:34 | |||
quote:en hoe doen we dat? | ||||
SuperRembo | woensdag 23 april 2008 @ 13:13 | |||
quote:Daartoe lezen we de f... manual ![]() | ||||
qu63 | woensdag 23 april 2008 @ 13:46 | |||
quote:
response: HTTP/1.1 401 Unauthorized Content-Length: 1710 Content-Type: text/html Server: Microsoft-IIS/6.0 WWW-Authenticate: Negotiate WWW-Authenticate: NTLM X-Powered-By: ASP.NET Date: Wed, 23 Apr 2008 11:45:03 GMT Connection: close U bent niet gemachtigd om deze pagina te bekijken U bent niet gemachtigd om deze map of pagina te bekijken met de referenties die u hebt opgegeven, omdat met de webbrowser een koptekstveld voor WWW-verificatie wordt verzonden dat niet kan worden geaccepteerd door de webserver. etc. | ||||
RiDo78 | woensdag 23 april 2008 @ 13:56 | |||
Aii... NTLM authenticatie... dat kan nog rottig worden. Hopen dat de server ook Basic wil slikken... maar voeg deze eens toe:
| ||||
qu63 | woensdag 23 april 2008 @ 14:01 | |||
quote:nope. | ||||
#ANONIEM | woensdag 23 april 2008 @ 14:03 | |||
tvp | ||||
RiDo78 | woensdag 23 april 2008 @ 14:05 | |||
Het probleem wordt hier beschreven, maar ik heb het niet getest... http://blog.thinkphp.de/a(...)ources-with-PHP.html | ||||
qu63 | woensdag 23 april 2008 @ 14:39 | |||
quote:ik moet dan eerst nog een NTLM-Proxy opzetten, heb er wel een gevonden, maar die werkt met Python, en ik heb geen diee of mn webhost het ondersteund ![]() | ||||
SuperRembo | woensdag 23 april 2008 @ 15:40 | |||
Ok, dan is 't toch iets ingewikkelder dan ik in eerste instantie veronderstelde ![]() | ||||
ursel | woensdag 23 april 2008 @ 15:52 | |||
Voor het inlezen van een file per lijn gebruiken we de preg_match functie: $aData = preg_split("/\r\n/", $fileData['content']); Alleen nu krijgen we ook files binnen welke opeens een \n als reguliere expressie moeten hebben. Weet iemand hoe we de preg_match het beste op kunnen stellen dat we ongeacht het type "new line" we elke lijn in de array kunnen stouwen? | ||||
ralfie | woensdag 23 april 2008 @ 16:04 | |||
quote:gwoon $array_met_elke_regel_op_een_rij = file ( "C:\bestand_met_meerdere_regels.ext"); | ||||
slacker_nl | woensdag 23 april 2008 @ 16:10 | |||
http://www.tizag.com/phpT/fileopen.php $ourFileName = "testFile.txt"; $fh = fopen($ourFileName, 'X') or die("Can't open file"); fclose($fh); Weet niet of je over de filehandle kan loopen, zodat je de data kan inlezen.. | ||||
ursel | woensdag 23 april 2008 @ 16:21 | |||
quote:Soms zijn dingen makkerlijker dan je wel eens wil denken.. ![]() Deed het in 2 stappen altijd, get_content en daarna uitsplitsen.. Tot ik er nu dus opeens een file had met een andere end line.. Werkt nog steeds netjes.. ![]() | ||||
qu63 | woensdag 23 april 2008 @ 23:40 | |||
quote:Ik dacht er ook heel simpel over, maar helaas ![]() | ||||
nlboy | donderdag 24 april 2008 @ 10:56 | |||
Ik heb denk ik een hele simpele vraag, maar ik kom er niet uit. Het volgende wil ik graag hebben: Als ik in het adresbalk test.php?p=nh in typ wil ik als echo Noord-Holland hebben. Wanneer ik test.php?p=nb invoer wil ik als echo Noord-Brabant hebben. Kortom elke provincies wil ik zo benaderen en dan als echo te tekst van de provincie. Ik heb al iets zitten maken, maar helaas lukt het me niet om de goede resultaat te krijgen. Het volgende heb ik:
Ik krijg alleen maar Noord-Holland te zien i.pv. bijvoorbeeld Noord-Brabant of ik krijg geen foutmelding wanneer ik niks invul. Wat doe ik fout? ![]() | ||||
Tiemie | donderdag 24 april 2008 @ 11:01 | |||
Je geeft $p de waarde "nh" if($p = 'h') moet zijn if($ == 'h') (geldt overigens voor elke regel ![]() zie http://nl2.php.net/manual/en/language.operators.comparison.php | ||||
slacker_nl | donderdag 24 april 2008 @ 11:03 | |||
quote: Maak een hash:
[ Bericht 2% gewijzigd door slacker_nl op 25-04-2008 10:56:33 ] | ||||
nlboy | donderdag 24 april 2008 @ 11:09 | |||
Bedankt allebei! Ik ga het proberen. ![]() | ||||
Piles | donderdag 24 april 2008 @ 18:46 | |||
Even kort vraagje: hoe kun je dmv php checken of een site online is? Dus even proberen om een connectie te maken, zo niet: mailtje sturen. Dit wil ik namelijk graag in een cron job hebben (uiteraard op andere host) ![]() Opgelost: file() doet wat ik wil ![]() [ Bericht 18% gewijzigd door Piles op 24-04-2008 21:01:07 ] | ||||
wobbel | donderdag 24 april 2008 @ 22:50 | |||
Hoe kan ik zelf zoiets maken als dit? http://www.google.com/webhp?complete=1&hl=en&btnG=Google+Search Dat ie dus automatisch aanvult met gegevens uit de database? Dat het met AJAX werkt snap ik wel, maar hoe doe ik dat precies? ![]() ![]() | ||||
qu63 | donderdag 24 april 2008 @ 22:53 | |||
quote:http://www.dynamicajax.com/fr/AJAX_Suggest_Tutorial-.html http://www.google.com/search?complete=1&hl=en&q=ajax+search+suggestion&btnG=Google+Search&aq=0&oq=AJAX+sea | ||||
Piles | donderdag 24 april 2008 @ 22:53 | |||
Met een stukje Javascript elke keer als er een toets ingedrukt wordt een request naar een php-pagina sturen. Die php haalt het dan uit de db, en stuurt het naar je javascript terug ![]() Ik ben er zelf geen ster in, maar heb het geleerd met http://www.w3schools.com/ajax/default.asp ![]() | ||||
Farenji | donderdag 24 april 2008 @ 23:01 | |||
Ja dat is er, er zijn meerdere kant en klare oplossingen. Ik ben zelf een redelijke fan van de Ext JS library, check dat eens uit zou ik zeggen. Voorbeelden te zien op: http://extjs.com/deploy/dev/examples/form/combos.html en http://extjs.com/deploy/dev/examples/form/forum-search.html | ||||
wobbel | donderdag 24 april 2008 @ 23:16 | |||
quote:HEEEEL erg bedankt!! Het draait inmiddels!! | ||||
Flipper01 | vrijdag 25 april 2008 @ 10:25 | |||
Ik wil een archief maken van alle nieuwsberichten geordend per maand. Ik heb nu in MySQL een kolom datum waarin de datum als DATETIME wordt weergegeven. Ik wil nu graag het volgende resultaat bereiken: - 2008 januari (2) april (1) mei (8) ..... Hoe kan ik dit voor elkaar krijgen? | ||||
JortK | vrijdag 25 april 2008 @ 10:28 | |||
quote:Even snel
[ Bericht 10% gewijzigd door JortK op 25-04-2008 10:41:11 (Verkeerde syntax) ] | ||||
Flipper01 | vrijdag 25 april 2008 @ 10:38 | |||
Waarvoor dient DATEPART en kan ik dit ook op een linux server gebruiken? | ||||
JortK | vrijdag 25 april 2008 @ 10:41 | |||
quote:Ik heb hem wat aangepast, zie deze link die je verder kan helpen En op wat voor server maakt niet uit natuurlijk ![]() | ||||
beerten | vrijdag 25 april 2008 @ 13:23 | |||
Hoi, ik ondervind een merkwaardig probleem. Ik heb een datase backup scriptje welke iedere dag uitgevoerd wordt. Het verstuurt een dbase dump per email. Dit werkt perfect op een aantal domeinen die ik heb. Het werkt net niet op een ander domein. Het verschil is de hostingprovider. De niet werkende staan bij een andere provider gehost. Het meest vreemde is: het script verstuurt de dump als attachment. Onder windows, in Outlook Express wordt de bijlage niet herkent. Ik heb het over de "foute" server, bij de andere domeinen werkt het weer wel. Als ik de emails ontvang op mijn linux laptop onder Kmail, zie ik de bijlage van de dumps verstuurt door de "foute" server wel! Het verschil is dus de combinatie van mailclient en hostingprovider... Ik heb werkelijk geen idee waar ik het zoeken moet. De headers zijn allen hetzelfde, de emails worden verstuurd met attachment, ook dit werkt correct (denk ik, stiekem ook niet) Het verschil openbaart zich dus bij het ontvangen van de emails met of Outlook Express of Kmail onder linux. Onder Outlook Express zie ik geen bijlage, maar staat de bijlage (gecodeerd???) in de tekst. Onder Kmail is het een keurig attachment. Onderstaand het scriptje Komt overigens van phphulp. Wie kan me vertellen waar ik de fout zoeken moet? Wat zou verantwoordelijk kunnen zijn voor het verschil in outlook express en kmail, in combinatie met een andere serversetup?
| ||||
wobbel | vrijdag 25 april 2008 @ 18:18 | |||
Ik ben weer eens aan het stoeien met wat JOINS :P en het lukt niet :( Ik heb deze query:
Ik heb de tabel Products, Products_Lang en de tabel Afbeeldingen. Ik wil nu alle producten met SubcategoryId = 1 weergeven, en daarbij ook alle data uit Products_Lang en Afbeeldingen die hetzelfde product ID hebben. Maar ik krijg 0 rows terug :'( en er zijn 5 records met SubcategoryId = '1' en met LanguageId = '1' | ||||
Arjan321 | vrijdag 25 april 2008 @ 22:02 | |||
In principe is de syntax "INNER JOIN", niet "JOIN". Weet niet of mysql daar moeilijk over doet. Weet je zeker dat er in alle 3 de tabellen de juiste gegevens staan? | ||||
Flipper01 | zaterdag 26 april 2008 @ 12:18 | |||
quote:Sorry voor m'n n00b vragen.. :$ Maar ik ben eruit gekomen! Ik snapte niet helemaal hoe het werkte, maar ik heb nu de datum in datetime weergegeven en bij het uitlezen maak ik een aantal extra kolommen aan waarin ik de datum uitsplits:
Daarnaast gebruik ik jouw aangepaste gegevens in een andee query THNX! [ Bericht 23% gewijzigd door Flipper01 op 26-04-2008 12:24:32 ] | ||||
Light | zaterdag 26 april 2008 @ 12:33 | |||
quote:Daar doet MySQL niet moeilijk over. | ||||
wobbel | zaterdag 26 april 2008 @ 13:20 | |||
quote:Ja, ik heb in SHOP_Afbeeldingen 1 record met ProductId = 1 In SHOP_Products zit ook 1 record met IdProduct = 1 en SHOP_Products_Lang heeft ook 1 record met ProductId = 1 alleen krijg ik 0 rows terug met mijn query | ||||
Farenji | zaterdag 26 april 2008 @ 13:27 | |||
quote:Probeer eens LEFT JOIN ipv gewoon JOIN. | ||||
wobbel | zaterdag 26 april 2008 @ 13:52 | |||
quote:De tabel SHOP_Afbeeldingen hoeft niet perse records te hebben met hetzelfde ProductID | ||||
Farenji | zaterdag 26 april 2008 @ 14:03 | |||
quote:Ja, daarom juist! Daarom krijg je met een INNER JOIN geen resultaten!! | ||||
#ANONIEM | zaterdag 26 april 2008 @ 18:29 | |||
quote:Hehe ![]() | ||||
Flipper01 | zondag 27 april 2008 @ 11:35 | |||
Hoe kan ik de huidige tijd als DateTime in een string zetten? Dit ivm het plaatsen in MySQL. Ik heb nu het volgende:
Maar krijg een foutmelding.. | ||||
JortK | zondag 27 april 2008 @ 11:39 | |||
quote:Ooi van het datatype datetime gehoord in MySQL? | ||||
Farenji | zondag 27 april 2008 @ 11:44 | |||
De functie date_create geeft en DateTime object terug, dus geen string. Ik vind dit echt weer zo'n typische vage php implementatie, gaat ook wel lekker tegen alle verwachting en conventies in maar dat zijn we gewend van php. Als je gewoon een string wil hebben die in een mysql datetime past, dan zou ik het simpel doen met date:
Dat geeft dus iets terug als "2008-04-27 11:44:25". http://nl3.php.net/manual/en/function.date.php | ||||
Flipper01 | zondag 27 april 2008 @ 11:46 | |||
quote:Hoe kan ik da huidige tijd hierin krijgen als ik m'n tabel op de volgende manier aanvul:
| ||||
Flipper01 | zondag 27 april 2008 @ 11:47 | |||
quote:Dit zocht ik! Thnx! | ||||
Farenji | zondag 27 april 2008 @ 11:50 | |||
Het kan natuurlijk veel makkelijker bedenk ik me nu pas, dmv de MySQL functie NOW()
| ||||
BugWorks | zondag 27 april 2008 @ 21:11 | |||
Ik ben op dit moment bezig met het maken van een poll-systeem. Hierbij wil ik controleren of er al gestemd is vanaf het ip waarvandaan de poll bezocht wordt. Als ik vervolgens met een query wil kijken of het ip adres al voorkomt bij de betreffende poll krijg ik een foutmelding, namelijk:
queryRetreiveIp = identificatie van de query x.x.x.x = ip adres Betreffende query:
Het ip komt in de database voor (is gevuld met test gegevens). Ik heb al geprobeerd te zoeken op de website van mysql.com naar een mogelijke oplossing maar ik word niks wijzer. Deze query heeft eerder wel gewerkt, waardoor hij nu niet meer werkt weet ik dus niet (ik kreeg deze fout niet eerder iig). | ||||
Intrepidity | zondag 27 april 2008 @ 21:22 | |||
Geen oplossing; maar wel belangrijk: zet alsjeplease niet zo variabelen in die query.. is vragen om sql-injectie.. ookal genereer je al de waarden zelf, gewoon even zo doen:
('" is ' gevolgd door ") Nog liever gebruik maken van prepared statements, maar die keuze is aan jezelf.. | ||||
#ANONIEM | maandag 28 april 2008 @ 00:33 | |||
Sowieso moet je de waarden tussen 'aanhalingstekentjes' zetten. Doe je dat niet, dan denkt MySQL dat het een kolom-naam is - en een IP-adres is uiteraard geen geldige naam voor een kolom... ![]() In het voorbeeldje van Interpidity is dit trouwens al verbeterd. ![]() | ||||
slakkie | maandag 28 april 2008 @ 01:10 | |||
quote:Even een vraag die aansluit op hetvolgende: quote:Hoe vaak staan deze fopen_wrappers uit (bij bijvoorbeeld hosters)? Ik doel dan op allow_url_fopen aangezien je deze niet via ini_set() kan setten voor zover ik de documentatie lees. Ik vraag dit omdat ik een manier wilde hebben om wget the simuleren in php. Het is op 3 verschillende manier te doen (tenminste, ik heb het op 3 verschillende manieren geimplementeerd). Via copy() en file_get_contents(), maar netzoals file zijn deze afhankelijk van de allow_url_fopen parameter in de file php.ini. En dan om het zelf te doen door een socket te openen en zelf HTTP te gaan praten tegen de desbetreffende server.. Als je alleen gebruikt maakt van file() in je code dan kan je nooit je scripts portable maken, aangezien file() niet altijd doet wat jij verwacht (het gaat croaken op het moment dat allow_url_fopen niet aanstaat. | ||||
Light | maandag 28 april 2008 @ 07:07 | |||
quote:Strings moeten tussen aanhalingstekens, getallen niet. Of nouja, MySQL maakt zich er niet zo druk om als je wel aanhalingstekens om getallen zet, maar het is netter om het niet te doen. En een IP-adres is geen getal maar een string, dus moet aanhalingstekens. | ||||
Xcalibur | maandag 28 april 2008 @ 12:24 | |||
Edit: ik had een pagina gemist ![]() Dit gaat over de allow_url_fopen() toestand: je kunt het natuurlijk ook via cURL doen ofzo ![]() hoevaak allow_url_fopen uitstaan zou ik niet weten... | ||||
mrbombastic | dinsdag 29 april 2008 @ 11:55 | |||
Ik heb een website met een deel dat alleen toegankelijk is voor geregistreerde gebruikers. Deze mogen bepaalde PDF bestanden downloaden. Ik heb het inmiddels redelijk voor elkaar gekregen. Enige minpunt is dat je als gebruiker de download per se moet opslaan. Als je op openen klikt, krijg je van Adobe een foutmelding: "There was an error opening this document. The file cannot be found". Ik ben er nu achter dat dit komt door het toevoegen van session_start() bovenaan mijn pagina. Dit is echter wel essentieel, anders kan ik niet controleren of de gebruiker is ingelogd. Ik heb geen oplossing voor dit probleem kunnen vinden: session_write_close werkt niet. Iemand die de oplossing weet? | ||||
slacker_nl | dinsdag 29 april 2008 @ 13:37 | |||
Note: If you are using cookie-based sessions, you must call session_start() before anything is outputted to the browser. Gebruikt je cookie based sessions? | ||||
wobbel | dinsdag 29 april 2008 @ 13:50 | |||
Oke, na wat geworstel heb ik aan de hand van dit topic de volgende query gekregen:
Het probleem is nu alleen, dat als één artikel meerdere afbeeldingen heeft, het product ook meerdere keren erin komt te staan. Stel ik heb 3 producten, en 1tje heeft 2 plaatjes, eentje heeft 3 plaatjes en de ander heeft 5 plaatjes...dan krijg ik deze output Product 1 Product 1 Product 2 Product 2 Product 2 Product 3 Product 3 Product 3 Product 3 Product 3 Maar hij moet gewoon Product 1, Product 2 en Product 3 weergeven | ||||
JortK | dinsdag 29 april 2008 @ 13:51 | |||
quote:GROUP BY is your best friend ![]() | ||||
mrbombastic | dinsdag 29 april 2008 @ 14:07 | |||
quote:Ik heb session_start() helemaal bovenaan staan. Het probleem is verholpen door:
| ||||
SuperRembo | dinsdag 29 april 2008 @ 19:01 | |||
quote:Ligt er aan wat je wil laten zien. Als je bij elk product een wisselend aantal plaatjes wilt laten zien, dan zal je het in php moeten oplossen. Als je geen plaatjes wil laten zien, waarom join je dan tegen de afbeeldingen tabel? Als je per product 1 plaatje wil laten zien dan moet je de query aanpassen, maar hoe hangt er weer van af welk plaatje je wil laten zien. | ||||
Swetsenegger | woensdag 30 april 2008 @ 13:24 | |||
.htaccess probleempje
hotlinking wordt wel geblokkeerd, maar alternatieve image wordt niet getoont. Wat doe ik fout? | ||||
slakkie | woensdag 30 april 2008 @ 14:15 | |||
quote:Ik zou hoe dan ook eerst de referer checken op ^$ want en daarna pas je ^123swets.com$. Het is logischer om te checken of de referer bestaat en om dan te checken of het uit het 123swets.com domain komt. Maar dat heeft wellicht niks met je probleem te maken. Of misschien ook wel: Als ik www.swets123.com/image/hotlink.gif direct wil benaderen kom ik uit op de volgende URL: http://www.123swets.com/i(...)t/index/default/home quote:Volgens mij komt dat door de [NC] en de volgorde van de checks. Als de referer leeg is moet ie de check skippen, maar omdat je eerst checked of het vanuit swets123.com komt en dan door de NC ervoor zorgt dat ie de originele URL weer gaat reprocesses en je dus zorgt voor een loop in je rewrites. -edit- Die NC heeft er niks mee te maken, even twee flags door elkaar gehaald- Enable je rewritelog en zet je levellog op 9. Zie ook: http://httpd.apache.org/docs/1.3/misc/rewriteguide.html (zoek op Blocked Inline-Images) [ Bericht 4% gewijzigd door slakkie op 30-04-2008 14:27:11 ] | ||||
qu63 | woensdag 30 april 2008 @ 14:43 | |||
ik zie http://www.123swets.com/image/hotlink.gif wel of Swets heeft het al aangepast ![]() | ||||
Swetsenegger | woensdag 30 april 2008 @ 14:52 | |||
Ja ik zie die image ook gewoon, zowel in safari als FF. De rest ga ik ff bekijken ![]() | ||||
Swetsenegger | woensdag 30 april 2008 @ 14:59 | |||
Hij blokkeerde mijn hotlink image ook ![]() ![]() | ||||
CraZaay | woensdag 30 april 2008 @ 15:07 | |||
Handig in het kader van bovenstaande en sowieso een dikke bookmark waard: http://perishablepress.co(...)pid-htaccess-tricks/ | ||||
qu63 | woensdag 30 april 2008 @ 15:22 | |||
quote:klinkt niet zo heel raar nee ![]() gefeliciteerd trouwens met de kleine ![]() ![]() | ||||
slakkie | woensdag 30 april 2008 @ 15:31 | |||
quote:
hotlink.gif mag iedereen hotlinken ![]() Ik blijf overigens die redirect error krijgen.. Ook na een shift reload, Ubuntu/FF/Konqueror. Zal het eens op de Mac proberen.. Zowel Safari als FF op de Mac geven me een redirect error. [ Bericht 8% gewijzigd door slakkie op 30-04-2008 15:39:05 ] | ||||
Swetsenegger | woensdag 30 april 2008 @ 15:37 | |||
hotlink.gif bestaat nu niet meer. het is nu hotlink.jpe | ||||
Swetsenegger | woensdag 30 april 2008 @ 15:38 | |||
![]() | ||||
slakkie | woensdag 30 april 2008 @ 15:40 | |||
quote:Dan moet ie een 404 geven ipv een 403 forbidden (Konqueror) en geen redirect errors (FF/Safari). | ||||
qu63 | woensdag 30 april 2008 @ 15:42 | |||
quote:ik zie je hotlink plaatje nu ![]() weliswaar na een ctrl+f5, want Nienke stond nog in mn cache ![]() Mozilla/5.0 (Windows; U; Windows NT 5.1; nl; rv:1.8.1.14) Gecko/20080404 Firefox/2.0.0.14 | ||||
Swetsenegger | woensdag 30 april 2008 @ 16:10 | |||
quote:MIjn 404 en 403 verwijst naar de index pagina. Ik heb hier geen errors. Misschien cache? -edit- woops, nee error in de redirect ![]() | ||||
Piles | woensdag 30 april 2008 @ 20:19 | |||
Ik zit met een heel raar probleem, vind ik zelf. Ik heb een html-bestand met daarin allerlei tabs en spaties. Die wil ik er uit hebben. Ik probeer dit:
Alle spaties tussen woorden e.d. verdwijnen, maar toch blijven er nog een heleboel over. Wat voor 'soort' spaties kunnen dat zijn, en hoe krijg ik ze weg :? | ||||
JortK | woensdag 30 april 2008 @ 20:25 | |||
quote:Zijn het geen linefeeds of carriage returns? | ||||
CraZaay | woensdag 30 april 2008 @ 20:26 | |||
Zijn het spaties in de broncode ("view source")? Dit kan overigens ook:
| ||||
Piles | woensdag 30 april 2008 @ 20:31 | |||
quote:
Dat doet al een hoop, maar er blijven er toch nog een paar over ![]() quote:Veranderd niks aan de situatie ![]() | ||||
CraZaay | woensdag 30 april 2008 @ 20:38 | |||
quote:Dat snap ik, het ging me vooral om het DRY-karakter en het gebruik van dubbele/enkele quotes. Maar het zijn in de source dus echt spaties (niet line endings in de HTML die gerenderd worden als spaties)? | ||||
Piles | woensdag 30 april 2008 @ 20:41 | |||
Oh, ik zie het al ![]() Het is & nbsp; ![]() | ||||
Flaccid | donderdag 1 mei 2008 @ 18:20 | |||
Ik heb een functie met die checkt of een variable leeg is of niet, wanneer hij leeg is zegt hij dat hij leeg is :D. Maar dan wordt het: Hoe krijg je de tekst van een variable die leeg is op het scherm, dus de naam van de lege variable?
| ||||
SuperRembo | donderdag 1 mei 2008 @ 18:30 | |||
De naam die je intern gebruikt komt toch niet overeen met de naam die je de gebruiker wil tonen. Ik zou een extra parameter toevoegen voor de "friendly name". | ||||
Flaccid | donderdag 1 mei 2008 @ 18:34 | |||
Is er iets waarmee je eenvoudig 10 waardes kan invoeren in zon functie? | ||||
Intrepidity | donderdag 1 mei 2008 @ 18:36 | |||
$var is de naam van de variabele toch al? als je checkempty("blaat") aanroept moet ie checken of $blaat leeg is lijkt me toch? dan is het if(empty($$var)) { // $var nu outputten.. $var uit $$var word dus omgezet naar "blaat" --> $blaat } | ||||
Flaccid | donderdag 1 mei 2008 @ 18:46 | |||
quote:Kan ook, maar wat SuperRembo zegt klopt, ik wil eigenlijk een userfriendly name eruit hebben. Dus nu nog een manier vinden om 10 waardes in te voeren. Ik kan het handmatig doen, dan heb ik 10 regels code. kan het slimmer? | ||||
SuperRembo | donderdag 1 mei 2008 @ 19:15 | |||
Je kunt een functie maken waar je een willekeurig aantal parameters aan mee kunt geven; steeds afwisselend een var en een naam. Daarvoor gebruikt je func_get_arg(). | ||||
ralfie | donderdag 1 mei 2008 @ 23:05 | |||
umm, waarom niet gwoon een arraytje?
| ||||
Flaccid | vrijdag 2 mei 2008 @ 00:26 | |||
quote:Mmm, dat soort code kan ik allemala niet ![]() | ||||
slakkie | vrijdag 2 mei 2008 @ 02:39 | |||
quote:Of gebruik func_get_args() icm met count (of func_num_args()). | ||||
slakkie | vrijdag 2 mei 2008 @ 05:00 | |||
Heb er maar een recursieve functie van gemaakt, accepteerd zowel arrays, als losse scalars. Persoonlijk zou ik er ook nog check bijgooien om te zien of $GLOBALS[$v] ook gelijk is aan 0 aangezien dat ook een boolean value kan zijn. En een nieuwe functie erbij om bepaalde globals te definieren indien ze empty zijn, accepteerd alleen maar hashes (assoc arrays).
[ Bericht 6% gewijzigd door slakkie op 02-05-2008 17:29:45 ] | ||||
Feola | vrijdag 2 mei 2008 @ 12:57 | |||
Stel je voor: Ik heb een klasse die beker heet, en ik heb een klasse die drank heet. In de klasse beker heb je de volgende vars: beker_id beker_inhoud beker_materiaal beker_drank Daarnaast heb ik de klasse drank, met daarin de volgende vars drank_id drank_naam Ik wil een nieuwe beker aanmaken, want ik heb dorst ![]() | ||||
Light | vrijdag 2 mei 2008 @ 13:02 | |||
quote:
Je geeft aan sprintf 1 string en 2 andere parameters mee, terwijl er in die string maar 1 placeholder is. Gevalletje haakjes verkeerd? | ||||
Light | vrijdag 2 mei 2008 @ 13:05 | |||
quote:Waarom zou je dat überhaupt willen? Als je bij de beker het drank_id opslaat dan kun je altijd de drank_naam weer achterhalen. | ||||
Feola | vrijdag 2 mei 2008 @ 13:23 | |||
Als ik bv gebruik maak van een database, en een tabel beker en drank heb. Of denk ik nu te moeilijk? | ||||
Flaccid | vrijdag 2 mei 2008 @ 13:24 | |||
quote:Misschien met foreign keys? | ||||
Light | vrijdag 2 mei 2008 @ 13:38 | |||
quote:Dan maak je een JOIN over die twee tabellen, als je tenminste wilt weten welke drank er in een beker zit. Zo'n id is een makkelijk, vast punt. Ander voordeel is dat als je "bier" wilt vervangen door "Heineken" (om verwarring met "Grolsch" te voorkomen bijvoorbeeld) dan hoef je dat maar op 1 plek aan te passen. | ||||
Light | vrijdag 2 mei 2008 @ 13:42 | |||
quote:Ja, dan moet je dus die ID's laten staan en niet ineens ID's door namen gaan vervangen. Da's niet logisch. Dat het in PHP kan, komt alleen maar omdat het loosely typed is. | ||||
Feola | vrijdag 2 mei 2008 @ 13:46 | |||
Ah ik snap het ![]() ![]() | ||||
webbyplus | vrijdag 2 mei 2008 @ 14:10 | |||
Hallo, waarschijnlijk super simpel op te lossen, maar het lukt me niet; Ik heb de volgende code:
De STRING $test bevat 76 cijfers. Echter als ik hem nu echo krijg ik zoiets te zien : "1.0305006007E+047". Hoe kan ik mijn string correct tonen? bvd | ||||
CraZaay | vrijdag 2 mei 2008 @ 14:14 | |||
Die code toont bij mij gewoon je string. Als integer (zonder quotes dus) komt 'ie dichter bij jouw weergave in de buurt (1.0305006007E+77). | ||||
webbyplus | vrijdag 2 mei 2008 @ 14:18 | |||
quote:ai ik zie het al, zit met de verkeerde var te spelen ![]() thx! | ||||
ursel | vrijdag 2 mei 2008 @ 14:24 | |||
quote:Hier ook.. ![]() | ||||
RiDo78 | vrijdag 2 mei 2008 @ 14:32 | |||
quote:Kan drank bestaan zonder beker? Zo nee, dan kun je het beste de class drank initiëren in de class beker. Dus bij het vullen van de beker geef je een drank_id mee, vervolgens wordt er in de beker class een $beker_drank = new drank($drank_id) uitgevoerd. In de constructor van drank_id haal je vervolgens alle gegevens op die voor die drank van belang zijn. Indien nodig kun je dan aan de beker vragen welke drank er in zit. De beker vraagt dat vervolgens weer aan drank of geeft het hele drank-object terug. Als drank wel kan bestaan zonder beker, bijvoorbeeld omdat het nog in de fles zit, dan kun je de beker vullen met het drank-object:
| ||||
RiDo78 | vrijdag 2 mei 2008 @ 14:34 | |||
quote:Maak er eens SELECT DISTINCT * .... van | ||||
DionysuZ | vrijdag 2 mei 2008 @ 14:34 | |||
quote:heineken verwarren met grolsch ![]() | ||||
slakkie | vrijdag 2 mei 2008 @ 16:30 | |||
quote:Duidelijk gevalletje van ja, en zelfs twee ![]() Aangezien trigger_error E_USER_NOTICE gebruikt als error_type als je deze niet meegeeft, viel de fout me niet op. [ Bericht 10% gewijzigd door slakkie op 02-05-2008 16:45:21 ] | ||||
slakkie | vrijdag 2 mei 2008 @ 16:40 | |||
quote:Een simpele oplossing is:
[ Bericht 1% gewijzigd door slakkie op 02-05-2008 16:52:05 ] | ||||
CraZaay | vrijdag 2 mei 2008 @ 16:49 | |||
quote:Mooi he dat PHP... een int en een string bij elkaar optellen ![]() | ||||
slakkie | vrijdag 2 mei 2008 @ 16:52 | |||
quote:Perl doet hetzelfde ![]() | ||||
Intrepidity | vrijdag 2 mei 2008 @ 16:55 | |||
quote: ![]() | ||||
CraZaay | vrijdag 2 mei 2008 @ 17:10 | |||
quote:JavaScript en allerlei andere loosely typed talen ook, maar dat maakt het nog niet netter ![]() | ||||
slakkie | vrijdag 2 mei 2008 @ 17:38 | |||
quote:Das waar, maar echo (float) $test werkt ook, en is wellicht nog netter ook ![]() | ||||
Dzy | zaterdag 3 mei 2008 @ 14:16 | |||
Ik heb een vraagje :) Ik ben bezig met een site waar een heleboel gedichten op komen te staan van dezelfde dichter. Deze kan hij taggen met meerdere tags, die allemaal weer in een aparte tabel tags staan. Omdat er meerdere tags bij meerdere gedichten kunnen gebruik ik een koppeltabel gedichten_tags. Alleen hoe kan ik nu mooi in 1 query alle gedichten opvragen die bij 1 of meer tags horen? Ik zat zelf al een beetje te prutsen met de volgende query:
Dit zou dan alle gedichten opvragen die een tag hebben van 1, 3 of 4 maar de bedoeling is natuurlijk dat ze alle drie zo getagd moeten zijn. En voor mijn gevoel is dit een ranzige query, maar dat kan ik verkeerd hebben. Ingewikkelde queries ben ik nog niet zo goed in :P Wie kan me helpen? | ||||
SuperRembo | zaterdag 3 mei 2008 @ 14:49 | |||
Met behulp van een soortgelijke query moet dat lukken. (In oude topics staan nog wel eens handige dingen) | ||||
slakkie | zaterdag 3 mei 2008 @ 15:02 | |||
quote:Ik zie niks verkeerd aan deze query om heel eerlijk te zijn. Maar toegegeven SQL is niet mijn sterkste ding. | ||||
Dzy | zaterdag 3 mei 2008 @ 15:06 | |||
Dan zou het dus iets soortgelijks worden:
worden? Ik snap de query nog niet helemaal :P Wat doet dat GROUP BY nou precies? Zorgt die dat die duplicates wegblijven? En die HAVING COUNT zorgt ervoor dat alleen resultaten die precies 3 keer voorkomen doorkomen om te zorgen dat alle tags aanwezig moeten zijn? Als ik nog andere zoekdingen toevoeg dan maakt het niet uit verder toch? Zolang het geen moeilijke constructies worden zal hij er altijd 3 blijven vinden of niet? Bedankt, ben nog niet zo'n ster in MySQL maar er komt verandering in, tof onderschrift trouwens :P | ||||
SuperRembo | zaterdag 3 mei 2008 @ 15:34 | |||
quote:Zie andere topic :P Het zou (uitgaande van MySQL 5) zo iets worden:
| ||||
Wouser | zaterdag 3 mei 2008 @ 16:12 | |||
quote:omfg ![]() | ||||
Dzy | zaterdag 3 mei 2008 @ 16:35 | |||
Ik heb het aan de praat, dankjewel. Hier is een query die ik gebruik om op 2 tags te zoeken die moeten matchen en het moet uit een bepaald boekje komen:
Doet het prima :) Thanks! Ik snap het ook zowaar :P | ||||
ursel | zaterdag 3 mei 2008 @ 16:40 | |||
quote:Zover ik tot nog toe heb ondervonden duren dit queries (dus met querie in querie) langer dan een join. | ||||
CraZaay | zaterdag 3 mei 2008 @ 16:56 | |||
quote:Een subquery dus ![]() Als je fatsoenlijke caching van de output gebruikt zou het snelheidsverschil weinig invloed mogen hebben overigens. Zijn er hier überhaupt mensen bezig met memcached en dergelijke? | ||||
SuperRembo | zaterdag 3 mei 2008 @ 18:03 | |||
quote:In dit geval lukt het ook wel zonder sub-query, alleen wordt 't daar wat minder overzichtelijk van. En de vraag is of 't echt sneller is.
(En alles wat je in de SELECT opneemt ook toevoegen aan de GROUP BY) | ||||
SuperRembo | zaterdag 3 mei 2008 @ 18:04 | |||
quote:Wat bedoel je daar precies mee? | ||||
CraZaay | zaterdag 3 mei 2008 @ 18:38 | |||
quote:Eigenlijk wat er staat ![]() Misschien niet van toepassing op de meeste sites die hier gebouwd worden (geen idee over wat voor projecten we het hier hebben), maar voor echt drukke sites is het onmisbaar. | ||||
Xcalibur | zaterdag 3 mei 2008 @ 18:56 | |||
Ik gebruik de cachingfunctie van Smarty, voor de templates / HTML dus. Op dynamische pagina's heb je daar niks aan, maar bij pagina's die weinig tot nooit wijzigen is de winst opvallend groot. Verder gebruik ik Adodb als database class, en die heeft ook een caching functie waarbij het resultaat in een file opgeslagen wordt. Het opzoeken en inlezen van de file is dermate traag dat je het eigenlijk alleen als backup-mechanisme kunt gebruiken, iets wat de documentatie zelf ook aangeeft. Met cachen in het geheugen heb ik geen ervaring.... Aan wat voor bezoekersaantallen / queries moet ik denken als jij het over een drukke site hebt? ![]() | ||||
Dzy | zaterdag 3 mei 2008 @ 19:14 | |||
Ik heb er op m'n werk wel eens mee moeten werken, afhankelijk van allerlei factoren scheelt het een beetje tot een hele boel, vooral afhankelijk van hoe vaak en veel de data verandert. Maar inderdaad, voor 99% van de sites die hier gebouwd worden is het vrij zinloos. Ik heb nog een vraagje hoe jullie het volgende zouden aanpassen: Ik kan nu mooi zoeken in de gedichten op meerdere dingen, op tags, het boek waar het gedicht in staan en/of de inhoud en titel. Deze query dingen staan gewoon in de url dmv GET, zelfs als je een gedicht aan het lezen bent. Hierdoor kan ik binnen dezelfde selectie gedichten met pijltjes vooruit en achteruit in de gedichten. Dus stel dat ik een zoekactie heb gedaan op gedichten met het woord School erin en de tag Liefde, dan staat in de url. Dan krijg ik een lijstje met gedichten die hieronder vallen, klik ik er een aan en dan krijg ik die voorgeschoteld. Nu wil ik dus zonder op Vorige te drukken naar het volgende of vorige gedicht in de selectie komen door op een pijltje te drukken. Dit is niet zo moeilijk te realiseren alleen zijn er een paar verschillende opties, wat zouden jullie doen: - Zodra je bent gaan zoeken alle IDs van de gedichten op volgorde in een sessie op slaan zodat je die heel makkelijk kunt checken om de pijltjes te maken met de goede link erbij. Nadeel van deze is dat er echt duizenden gedichten in de database komen en je dus bij een hele vrije search makkelijk 2000 ID's op gaat slaan. Ik weet niet precies wat voor limiet er bij sessions zitten maar op deze host zal het vast niet hoog zijn. - Als je het bericht checkt kun je zo de search opnieuw doen zonder limit en dan zo de vorige en volgende ID ophalen. Nadeel is wel dat je dan elk gedicht weer de query moet uitvoeren. EDIT: Nadeel bij 1 vergeten. | ||||
CraZaay | zaterdag 3 mei 2008 @ 19:17 | |||
quote:Een project wat ik voor NU.nl gedaan heb bijvoorbeeld (da's extreem), maar ook een jongerensite met een sociaal netwerk wat met 30.000 pageviews per dag al aardig wat zware queries oplevert. | ||||
SuperRembo | zaterdag 3 mei 2008 @ 20:35 | |||
Nee, memcached gebruik ik niet, maar dat had je al wel begrepen ![]() Ziet er interessant uit, daar moet ik eens in duiken. | ||||
Farenji | zondag 4 mei 2008 @ 01:17 | |||
Memcache gebruik ik niet zo vaak maar ik gebruik wel regelmatig sql caching, waar het resultaat van een loodzware query geserialized wordt opgeslagen in een objectstorage in de db. Aan memory caching heb je in dit geval minder omdat het om queries gaat waar het resultaat hoogstens 1 keer per dag wijzigt en je aan alle bezoekers hetzelfde resultaat wil tonen. Die wil je dus ook maar 1 keer per dag berekenen, niet meer. Eigenlijk gebruik ik caching alleen als het echt heel nodig is - als het om het verschil tussen een server die op zijn bek gaat en een server die netjes door blijft werken gaat bijvoorbeeld - maar als het niet perse moet dan liever niet. Caching kan voor allerlei nare problemen zorgen en maakt troubleshooten ook vaak moeilijker. | ||||
CraZaay | zondag 4 mei 2008 @ 07:03 | |||
quote:Waarom zou memcached hier niet geschikt voor zijn? In dat geval check ik in de model of het result in de cache zit, en zo niet voer ik de query uit en sla het resultaat op in de cache met een time to live van 24 uur ![]() | ||||
Chandler | maandag 5 mei 2008 @ 09:14 | |||
Kleine vraag, stel ik heb een hostname cc93022-a.tu.nogwat.home.nl Van deze hostname wil ik het volgende uitlezen (maar dit kan natuurlijk ook een andere hostname zijn) - home.nl - home - @home internet Groningen Nederland (dit kun je ergens uitlezen maar waar?) Is er voor de 1e 2 een regex die ook werkt met co.uk en dergelijke domeinnamen? en waar kan ik de 3e gegeven weg halen? | ||||
Xcalibur | maandag 5 mei 2008 @ 10:02 | |||
ik denk dat je de eerste 2 wel met parse_url() kunt uitvinden. De 3e krijg je met gethostbyaddr() denk ik.... | ||||
qu63 | maandag 5 mei 2008 @ 11:04 | |||
quote:punt 3 is alleen uit te lezen bij @home en nog een geloof ik. Bij planet (mijn ISP) wordt het niet meegestuurd. Je hebt wel databases die dat soort info verzamelen en waar je beroep op kunt doen, sommige gratis, sommige niet. | ||||
wobbel | maandag 5 mei 2008 @ 14:54 | |||
Ik heb een tabel met Auto Increment, hoe krijg ik nu heel makkelijk het laatste ID eruit? Nu doe ik namelijk SELECT id FROM gegevens ORDER BY id DESC LIMIT 1, maar kan dat niet sneller? | ||||
JortK | maandag 5 mei 2008 @ 14:59 | |||
quote:SELECT MAX(id) FROM gegevens ? | ||||
JortK | maandag 5 mei 2008 @ 15:00 | |||
Trouwens nog een leuke link gevonden over memcaching: http://www.search-this.co(...)uction-to-memcached/ | ||||
wobbel | maandag 5 mei 2008 @ 15:11 | |||
quote:moet ik die dan weer opvragen met mysql_fetch_assoc of kan dat ook met mysql_result ofzo? | ||||
Piles | maandag 5 mei 2008 @ 15:12 | |||
quote:
Zo ff uit mn hoofd :P | ||||
wobbel | maandag 5 mei 2008 @ 15:14 | |||
quote:Ah bedankt, gewoon met mysql_result!! Super jongens, weeti k dat ook weer ![]() | ||||
SuperRembo | maandag 5 mei 2008 @ 16:36 | |||
Als je de id wil weten van de row die je net ge-insert hebt, dan kan je beter mysql_insert_id() gebruiken. | ||||
JortK | maandag 5 mei 2008 @ 16:38 | |||
quote:Goede tip zeg ![]() ![]() | ||||
wobbel | maandag 5 mei 2008 @ 18:54 | |||
quote:Die kende ik gelukkig al ![]() Andere vraag: Ik heb onderstaande query, alleen daar is blijkbaar iets fout aan ![]()
Foutmelding quote: | ||||
slakkie | maandag 5 mei 2008 @ 20:30 | |||
quote:Moet het niet zijn
| ||||
Farenji | maandag 5 mei 2008 @ 21:22 | |||
Er is wel meer fout aan je query. Wat wil je wissen, uit welke tabellen? Na een "using" moet een tabel komen, geen veld. Een left join werkt zo niet. De syntax is "left join <tabelnaam> on <join conditie>". | ||||
Chandler | dinsdag 6 mei 2008 @ 09:26 | |||
quote:Ik heb gezocht naar opties voor punt 3 (@home internet) maar kan helaas niets vinden ![]() ![]() | ||||
wobbel | dinsdag 6 mei 2008 @ 11:46 | |||
quote:Op jou manier krijg ik de volgende fout: quote:Dit is m'n query:
Ik heb de MySQL reference guide er ook al bijgezocht, maar zelfs dan lukt het me nog niet ![]() http://dev.mysql.com/doc/refman/5.0/en/delete.html | ||||
qu63 | dinsdag 6 mei 2008 @ 11:50 | |||
quote:http://www.maxmind.com/app/city bijvoorbeeld, maar is wel duur ![]() | ||||
qu63 | dinsdag 6 mei 2008 @ 11:50 | |||
http://sourceforge.net/projects/geoip/ is dan wel gratis.. verder zoeken op google naar geoip ![]() | ||||
JortK | dinsdag 6 mei 2008 @ 12:07 | |||
quote:Waarom een left join in een delete statement? Je kan toch gewoon dit doen:
En als je ook de content wil verwijderen:
| ||||
ursel | dinsdag 6 mei 2008 @ 12:20 | |||
Misschien een knullige vraag, maar om 2 tabellen te mergen doe ik een select in een temp tabel en update ik de main tabel. Nu doe ik een query met SELECT * FROM table. Maar eigenlijk wil ik alle kolommen hebben exclusief kolom ncID. Aangezien er +/- 15 kolommen zijn leek het mij eigenlijk onlogisch om elke kolom in de SELECT statement te plaatsen. Is er geen praktische manier om een specifieke kolom te excluden? | ||||
JortK | dinsdag 6 mei 2008 @ 12:28 | |||
quote:
En dan niet de kolom ncID ertussen zetten? | ||||
ursel | dinsdag 6 mei 2008 @ 12:33 | |||
quote: ![]() ![]() Zoals ik zei: quote: | ||||
JortK | dinsdag 6 mei 2008 @ 12:36 | |||
quote:Dat heet gewoon luiheid ![]() | ||||
wobbel | dinsdag 6 mei 2008 @ 12:45 | |||
quote:Nou omdat ik dit wil uitvoeren eigenlijk: DELETE FROM SHOP_Carts LEFT JOIN SHOP_Cartcontents ON SHOP_Carts.IdCart = SHOP_Cartcontents.CartId WHERE SHOP_Carts.Tijd < '250000' en daarom wilde i kze koppelen dmv ID [ Bericht 18% gewijzigd door wobbel op 06-05-2008 13:21:39 ] | ||||
slacker_nl | dinsdag 6 mei 2008 @ 13:21 | |||
quote:WHER of WHERE ![]() | ||||
wobbel | dinsdag 6 mei 2008 @ 13:23 | |||
quote:Zoals je kon zien had ik de goede query er ook bijgezet, aangezien een MySQL foutmelding niet de gehele query teruggeeft. Ik had gewoon WHERE dus ![]() | ||||
JortK | dinsdag 6 mei 2008 @ 13:40 | |||
quote:Zo dan:
| ||||
wobbel | dinsdag 6 mei 2008 @ 14:21 | |||
quote:Stomme vraag, moet ik die 2 query's apart uitvoeren of alleen de onderste? | ||||
JortK | dinsdag 6 mei 2008 @ 14:23 | |||
quote:Lijkt mij allebei, de bovenste verwijderd je 'winkelwagen' de onderste je 'winkelwageninhoud' | ||||
Intrepidity | dinsdag 6 mei 2008 @ 15:44 | |||
Wel andersom lijkt me, als je eerst die bovenste uitvoert levert de subquery in de onderste niks meer op | ||||
JortK | dinsdag 6 mei 2008 @ 15:48 | |||
quote:Goed gezien ja ![]() ![]() | ||||
Chandler | woensdag 7 mei 2008 @ 11:07 | |||
Ik kan maar niet uitvinden hoe mensen de provider titel kunnen uitlezen zoals op deze site: http://aruljohn.com/details.php verder heb ik ip 2 country gechecked maar daar kan ik alleen land, stad en landcode uitlezen middels ip ranges.. Dus niet bovenstaande gegevens... -edit- Ik heb gepoogd de auteur van bovenstaande URL te mailen maar helaas, hij heeft nergens een contact email adres / form staan... ![]() | ||||
Dzy | woensdag 7 mei 2008 @ 11:38 | |||
Bovenaan z'n site in het menu staat "Contact me" ![]() http://aruljohn.com/contact.php En mocht je erachter zijn kun je het hier dan even posten? ![]() Vraagje: Als ik een locatie op Googlemaps heb hoe kan ik daar dan de hoogte/breedtegraag van krijgen om google maps te integreren in een site van me? | ||||
qu63 | woensdag 7 mei 2008 @ 11:43 | |||
quote:met ongeveer iets als dit:
zoiets :P Key moet je zelf aanvragen vie de google-api site :) Overigens staan daar nog meer voorbeelden op :) | ||||
JortK | woensdag 7 mei 2008 @ 11:46 | |||
quote:Check ook de site van WyriHaximus die heeft er ook aardig wat informatie opstaan. ![]() | ||||
Dzy | woensdag 7 mei 2008 @ 11:58 | |||
Key heb ik, maar het gaat erom dat ik bij maps.google.com bij een locatie de hoogte en lengtebreedte kan vinden zodat ik die kan integreren. Als ik bij die examples kijk staat er overal dit soort dingen: map.setCenter(new GLatLng(37.4419, -122.1419), 13); Daar gaat het me om, hoe bepaal ik van een bepaalde straat als ik die opzoek bij googlemaps wat de GLatLng moet zijn? ![]() | ||||
qu63 | woensdag 7 mei 2008 @ 12:03 | |||
quote:als je nu naar maps.google.com gaat, een locatie opzoekt, en dan klikt op "link naar deze pagina", dan zie je in die url de coördinaten en het zoomniveau staan: http://maps.google.nl/maps?f=q&hl=nl&geocode=&q=Amsterdam&ie=UTF8&ll=52.373713,4.890976&spn=0.128695,0.32135&t=h&z=12&iwloc=addr ll zijn dus de coördinaten, en z is het zoomniveau ![]() | ||||
qu63 | woensdag 7 mei 2008 @ 12:07 | |||
http://tools.wikimedia.de/~magnus/geo/geohack.php?pagename=Albany%2C_New_York¶ms=42_39_35_N_73_46_53_W_type:city dat is ook wel leuk om te bekijken. | ||||
WyriHaximus | woensdag 7 mei 2008 @ 12:21 | |||
quote:Lees dit eens, dit gaat over geocoding (het omzetten van een adres naar lat/long coördinaten) http://code.google.com/ap(...)vices.html#Geocoding ![]() | ||||
Dzy | woensdag 7 mei 2008 @ 14:46 | |||
Dank jullie allen voor de links, ik ben er al uitgekomen ![]() Ik ga nu maar eens met cURL spelen om automagisch allerlei dingen van imdb te plukken en in mijn database te gooien zodat ik mooi links kan leggen tussen allerlei films in mijn collectie. | ||||
JortK | woensdag 7 mei 2008 @ 15:19 | |||
quote:Altijd leuk ![]() | ||||
Chandler | woensdag 7 mei 2008 @ 18:05 | |||
quote:Bij deze ![]() Aangezien ik geen email adres kon vinden en ook zijn MSN niet overeenkomt met zijnmsn@msn.com ![]() Help wanted ![]() | ||||
Dzy | woensdag 7 mei 2008 @ 18:41 | |||
Misschien is het wel @hotmail.com, veel lui msnen daar onder. Verder kan ik je helaas niet helpen ![]() | ||||
Dzy | woensdag 7 mei 2008 @ 19:48 | |||
Hmm, hoe doen jullie dat met headers enzo sturen met curl? Als ik met cURL imdb probeer te openen geeft hij een 111 error, volgens google betekent dit dat hij geen connectie kan openen. Ik heb ook een paar andere pagina's geprobeerd te openen maar allen geven error 111. Dit is m'n code, ik doe toch niets fout of wel?
Volgens phpinfo support mn host wel cURL: CURL support enabled CURL Information libcurl/7.10.6 OpenSSL/0.9.7a ipv6 zlib/1.1.4 Dus ik snap niet precies wat er mis is. Iemand? :D | ||||
qu63 | woensdag 7 mei 2008 @ 19:50 | |||
zo open je google.com he. en curl is vooral om een formulier te submitten (om bijvoorbeeld automatisch op fok te kunnen posten) | ||||
JortK | woensdag 7 mei 2008 @ 19:54 | |||
quote:Waarschijnlijk moet je cookies meesturen ![]() Dan kun je checken met LiveHTTPHeaders | ||||
Dzy | woensdag 7 mei 2008 @ 20:16 | |||
Dat het google was, was om te checken of ik wel andere sites kon benaderen met curl. En het is onzin dat het alleen bedoeld is om formulieren te submitten, ik zie ook vaak zat dat het gebruikt wordt informatie te halen uit andere pagina's, dit vind ik ook een hele mooie toepassing, lekker film info van de site daar halen. Ik had het even wat ingekort inderdaad, ik had deze twee regels voor imdb er ook bij gezet, voor cookies:
Dat zag ik ergens anders staan voor cookies. Als ik met LiveHTTPHeaders kijk dan zie ik voor cookies dit staan: Cookie: PREF=ID=1a2763e15df2eb83:TM=1160573487:LM=1210180097:GM=1:S=4Rst5wA_UWU39O8F Wat dit allemaal betekent zegt me niet zoveel, maar het zal wel o.a. de session ID hebben. Dit is het hele header block van de pagina van Harold and Kumar 2:
Het eerste block zijn de headers die FF verstuurt, het tweede zijn de headers die ik terugkrijg? Wat moet ik nu allemaal bij cURL instellen zodat cURL ook netjes de pagina terugkrijgt? :) En als daar kort commentaar bij zou kunnen komen waarom dat precies dan kan ik het de volgende keer waarschijnlijk wel zelf :) | ||||
CraZaay | woensdag 7 mei 2008 @ 20:40 | |||
quote:Waar slaat dat nou weer op? Curl is geschikt om o.a. GET, POST, PUT en DELETE requests uit te kunnen voeren, bijvoorbeeld om een RESTful interface te gebruiken. Hoe kom je erbij dat het vooral is om een formulier te posten? | ||||
qu63 | woensdag 7 mei 2008 @ 20:42 | |||
quote:omdat ik het zo alleen gebruik ![]() | ||||
Dzy | donderdag 8 mei 2008 @ 00:00 | |||
Kan iemand anders proberen IMDB te benaderen via cURL? Ik heb een joomla extension gevonden waarin ze ook met cURL imdb aanspreken en daar stond alleen extra een regeltje curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout); bij, en ook daarmee deed hij het bij mij niet. Ik ben dus bang dat er bij mijn host iets niet helemaal goed zit. Dit is de volledige code die zou moeten werken:
| ||||
qu63 | donderdag 8 mei 2008 @ 00:05 | |||
quote:ik krijg een "Fatal error: Call to undefined function curl_init() in C:\web\www\test.php on line 2"-melding | ||||
qu63 | donderdag 8 mei 2008 @ 00:07 | |||
hmz, fout zit bij mij denk ik. copy-paste vanaf php.net geeft dezelfde melding ![]() | ||||
Dzy | donderdag 8 mei 2008 @ 00:16 | |||
Er is geen cURL geinstalleerd dan ![]() Edit: Maar toch bedankt ![]() | ||||
Dzy | donderdag 8 mei 2008 @ 00:51 | |||
Sterf, kuthost. Tijd om een nieuwe host te vinden. quote:Ze hebben gewoon een firewall aanstaan dat al het verkeer via poort 80 naar buiten tegenhoudt. | ||||
Dzy | donderdag 8 mei 2008 @ 01:04 | |||
Wat wel een voordeel is is dat het in ieder geval niet aan mij lag dat het fout ging ![]() - cURL ( ![]() - MySQL - PHP 5 - Cronjobs/tasks - Een beetje fatsoenlijke snelheid (hoeft niet heel erg hoog te liggen) | ||||
CraZaay | donderdag 8 mei 2008 @ 08:39 | |||
quote:Bizar zeg. Ze gaan er vanuit dat je nooit een of andere API van een webservice wilt gebruiken? ![]() | ||||
qu63 | donderdag 8 mei 2008 @ 09:10 | |||
quote:Ik heb er uitgebreid mee geëxpirimenteerd, dus het is zeker wel geïnstalleerd ![]() | ||||
Dzy | donderdag 8 mei 2008 @ 09:25 | |||
quote:Ja. ![]() ![]() | ||||
Dzy | donderdag 8 mei 2008 @ 09:45 | |||
Call to undefined function betekent gewoon dat die functie niet bestaat, daarom ging ik er eigenlijk vanuit dat cURL niet geïnstaleerd stond ![]() | ||||
wobbel | donderdag 8 mei 2008 @ 12:42 | |||
Ik heb een script dat bijlagen verzend, maar die werkt niet helemaal goed ![]() De bijlagen komen in Mozilla Thunderbird wel goed binnen, alleen Gmail ziet ze als beschadigd...en sommige andere e-mail clients vreten hem ook niet ![]() Dit is de code:
BASE_PATH is gewoon goed gedefinieerd ![]() ![]() Bestandsgrootte's kloppen wel ongeveer [ Bericht 1% gewijzigd door wobbel op 08-05-2008 12:47:39 ] | ||||
wobbel | donderdag 8 mei 2008 @ 13:41 | |||
quote:Oke, ik heb nu dit...maar die leegt alsnog de hele tabel SHOP_Cartcontents, ongeacht de datum van SHOP_Carts.Date ![]()
| ||||
Xcalibur | vrijdag 9 mei 2008 @ 08:21 | |||
Ik heb pas een mooie SOAP/XML server gemaakt met NuSOAP, met een aantal bijbehorende clients. Hartstikke leuk, en het werkt ook prima ![]() In NuSOAP heb ik wel de functie SetCredentials() gevonden, waarmee je dus je username en password kan zetten. Wat ik alleen niet begrijp is waartegen deze gechecked worden ![]() Wie weet raad? ![]() | ||||
HuHu | vrijdag 9 mei 2008 @ 08:28 | |||
quote:Is er een reden dat je zelf bijlagen wilt versturen? Anders kun je beter phpMailer gebruiken. Die kan ook bijlagen versturen en nog veel meer stoere dingen ![]() | ||||
Xcalibur | vrijdag 9 mei 2008 @ 13:02 | |||
quote:Als ik het goed begrijp kan SOAP alleen met HTTP authenticatie overweg, de rest zal je dus in de soap-server moeten oplossen. Wat ik dus gedaan heb, en dat lijkt allemaal te werken ![]() | ||||
wipes66 | maandag 12 mei 2008 @ 13:26 | |||
kan iemand voor mij verifieren dat deze query alleen de oude gegevens verwijdert? Het is zo lullig als er belangrijke gegevens verloren gaan door mijn gepruts :') :P
| ||||
Light | maandag 12 mei 2008 @ 13:30 | |||
quote:Volgens mij gaat de delete-query mis, omdat date een keyword is in MySQL. Daar zou je dan backtics omheen moeten zetten, dus `date`. Nog mooier is het om geen keywords als kolomnamen te gebruiken ![]() | ||||
Farenji | maandag 12 mei 2008 @ 13:40 | |||
Nee hoor, date is geen keyword, als kolomnaam heb je geen backticks nodig. Deze query moet gewoon goed gaan. En ja, hij wist alleen oude records. | ||||
HuHu | maandag 12 mei 2008 @ 13:50 | |||
quote:Als je DELETE even vervangt door SELECT *, dan kun je zien wat er allemaal verwijderd gaat worden. | ||||
Light | maandag 12 mei 2008 @ 13:59 | |||
quote:Het is wel een keyword. Maar voor dit specifieke geval heb je inderdaad geen backticks nodig. Dat zegt de MySQL documentatie. | ||||
SuperRembo | maandag 12 mei 2008 @ 14:18 | |||
quote: Als dit script twee maal tegelijk wordt uitgevoerd bestaat (theoretisch) de kans dat je alle records verwijderd. Waarom niet gewoon zo?
[ Bericht 5% gewijzigd door SuperRembo op 12-05-2008 14:51:34 ] | ||||
qu63 | maandag 12 mei 2008 @ 14:23 | |||
quote:of als er 50001 records zijn blijft er nog maar 1 record over. | ||||
SuperRembo | maandag 12 mei 2008 @ 14:52 | |||
quote:Foutje. De nieuwste 50000 moeten natuurlijk blijven staan, niet de oudste. Dus ORDER BY date DESC niet ASC. | ||||
wipes66 | maandag 12 mei 2008 @ 16:05 | |||
ok ik heb het nu omgedraaid. nu selecteer hij de nieuwste eerst, maar begint pas te verwijderen bij $limit
| ||||
SuperRembo | maandag 12 mei 2008 @ 16:15 | |||
Waarom tel je eerst het totaal aantal records? Dat is overbodig, je kunt gewoon een (absurd) groot getal voor het maximaal aantal records dat er verwijderd mag worden. |