quote:Op donderdag 10 november 2005 17:35 schreef Desdinova het volgende:
Waarom werkt dit niet..
Het is de bedoeling dat een geupload file uitgelezen wordt en de data in die file in een database toegevoegd wordt.
De code:
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<?php
php
$table_name="OBcontacts_temp";
$textfile = $_FILES['file']['tmp_name'];
chmod($textfile,0755);
$field_terminater="";
$line_terminator="\r\n";
$query = "LOAD DATA INFILE '$textfile' INTO TABLE $table_name (Data) ";
if (isset($field_terminater)) {
$query .= "FIELDS TERMINATED BY '$field_terminater'";
}
if (strlen($line_terminator)>0) {
$query .= "LINES TERMINATED BY '". stripslashes($line_terminator)."'";
}
$sql_query = $query;
$result= mysql_query($sql_query);
?>
ik vermoed dat de fout zit bij het $textfile = $_Files gebeuren.. iemand die me kan vertellen hoe t wel moet?
De database connectie is goed iig.
mm zou ik daar wat aan kunnen doen?quote:Op maandag 14 november 2005 09:16 schreef Ro�a� het volgende:
Of het kan zijn dat je mysql geen leesrechten heeft tot de upload folder van php
Tevens zou ik empty() ipv isset() gebruiken voor de $field_terminator.
1 2 | ----- ------ |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | // SML parsen $berichtmetsml = preg_replace("!\\[b\\](.*)\\[/b\\]!Usi","<span class='vet'>\\1</span>",$bericht); $berichtmetsml = preg_replace("!\\[i\\](.*)\\[/i\\]!Usi","<span class='cursief'>\\1</span>",$berichtmetsml); $berichtmetsml = preg_replace("!\\[u\\](.*)\\[/u\\]!Usi","<span class='onderstrepen'>\\1</span>",$berichtmetsml); $berichtmetsml = preg_replace("!\\[s\\](.*)\\[/s\\]!Usi","<span class='doorhalen'>\\1</span>",$berichtmetsml); $berichtmetsml = preg_replace("!\\[url\\]www.(.*)\\[/url\\]!Usi", "<a href=\"http://www.\\1\">\\1</a>",$berichtmetsml); $berichtmetsml = preg_replace("!\\[url\\](.*)\\[/url\\]!Usi","<a href=\"\\1\">\\1</a>",$berichtmetsml); $berichtmetsml = preg_replace("!\\[url=(.*)\\](.*?)\\[/url\\]!Usi","<a href=\"\\1\">\\2</a>",$berichtmetsml); $berichtmetsml = preg_replace("!\\[img\\](.*)\\[/img\\]!Usi","<img class='smlplaatjestandaard' alt='' src=\"\\1\"></img>",$berichtmetsml); $berichtmetsml = preg_replace("!\\[cimg\\](.*)\\[/cimg\\]!Usi","<div class='centreren'><img alt='' class='smlplaatjegecentreerd' src=\"\\\"></img></div>",$berichtmetsml); $berichtmetsml = preg_replace("!\\[limg\\](.*)\\[/limg\\]!Usi","<img alt='' class='smlplaatjelinks' src=\"\\1\"></img>",$berichtmetsml); $berichtmetsml = preg_replace("!\\[rimg\\](.*)\\[/rimg\\]!Usi","<img alt='' class='smlplaatjerechts' src=\"\\1\"></img>",$berichtmetsml); // Bericht tonen echo"<div class='lijntje'><br/><span class='onderstrepen'>$titel, geplaatst op op $datum om $tijd uur.</span><br/><br/>$berichtmetsml<br/><br/></div>"; ?> |
1 2 3 | $berichtmetsml = preg_replace("!\\[url=(.*)\\](.*)\\[/url\\]!Usi","<a href=\"\\1\">\\2</a>",$berichtmetsml); ?> |
OMFG!quote:Op maandag 14 november 2005 09:47 schreef Light het volgende:
In je [url= regel staat een vraagteken teveel.
[ code verwijderd ]
Je doet twee addities aan de query, als die allebei worden uitgevoerd heb je een spatie te weinig tussen de twee toevoegingen.quote:Op maandag 14 november 2005 09:23 schreef Desdinova het volgende:
[..]
mm zou ik daar wat aan kunnen doen?
hij laat iig wel wat zien bij de echo van $textfile.
Ik kan het fout hebben, maar dat stukje over Lines Terminated geeft de \r\n toch in single quotes aan mysql?quote:Op maandag 14 november 2005 09:09 schreef Desdinova het volgende:
Had hem geplaatst in de oude, maar daar kijkt niemand meer natuurlijkdus even een repost:
[..]
Sterker nog, er gaat wel wat meer fout. Doe eens een echo $query, vlak voordat je je query uitvoert.quote:Op maandag 14 november 2005 09:09 schreef Desdinova het volgende:
Had hem geplaatst in de oude, maar daar kijkt niemand meer natuurlijkdus even een repost:
[..]
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | php session_start(); echo "<form action='$PHP_SELF' method='POST'>"; for ($a = 0; $a < 3; $a++) { echo "<input type='text' name='$tekstvak[$a]'><br>"; } echo "<input type = 'submit' value='Verstuur' name='submit'>"; echo "</form>"; for ($a = 0; $a < 3; $a++) { $_SESSION['tekst'] = $tekstvak[$a]; } $tekst = $_SESSION['tekst']; echo "$tekst"; ?> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | session_start(); echo '<form action="' . $PHP_SELF . '" method="POST">'; echo '<input type="hidden" name="submitted" value="true" />'; for ($i = 0; $i < 3; $i++) { echo '<input type="text" name="tekstvak[' . $i . ']"><br />'; } echo '<input type="submit" value="Verstuur" />'; echo '</form>'; $submitted = $_POST['submitted']; if ($submitted == 'true') { for ($i = 0; $i < 3; $i++) { $_SESSION['tekst'] = $_POST['tekstvak'][$i]; } } unset($submitted); $tekst = $_SESSION['tekst']; print_r($tekst); ?> |
Ik loop nu te kloten met array's en sessies.quote:Ik heb een winkelwagen script waarbij gebruikers artikelen kunnen toevoegen. Per toegevoegd artikel is het de bedoeling dat de gebruiker zelf een tekst toevoegd welke op zijn artikel komt te staan. Het is dus mogelijk dat een gebruiker drie keer het zelfde artikel kiest, maar waar hij drie verschillende teksten op wil hebben.
Wat ik wil, is dus dat zei hun teksten toevoegen en vervolgens op afrekenen drukken. Hierna komen zij uit op een scherm met daarin het overzicht van de door hun toegevoegde artikelen en de daarbij door hun toegevoegde tekst.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | php session_start(); echo '<form action="' . $PHP_SELF . '" method="POST">'; echo '<input type="hidden" name="submitted" value="true" />'; for ($i = 0; $i < 3; $i++) { echo '<input type="text" name="tekstvak[' . $i . ']"><br />'; } echo '<input type="submit" value="Verstuur" />'; echo '</form>'; $submitted = $_POST['submitted']; if ($submitted == 'true') { for ($i = 0; $i < 3; $i++) { $_SESSION['tekst'][$i] = $_POST['tekstvak'][$i]; } } unset($submitted); print_r($_SESSION['tekst']); ?> |
zitten idd wat dingen in.. maar ik heb dat hele stukje op nonactief staan. mijn querie ziet er zo uit (echo):quote:Op maandag 14 november 2005 12:09 schreef JeRa het volgende:
[..]
Sterker nog, er gaat wel wat meer fout. Doe eens een echo $query, vlak voordat je je query uitvoert.
Zet dan eens eenquote:Op maandag 14 november 2005 14:30 schreef Desdinova het volgende:
[..]
zitten idd wat dingen in.. maar ik heb dat hele stukje op nonactief staan. mijn querie ziet er zo uit (echo):
LOAD DATA INFILE '/tmp/phpC8fOxB' INTO TABLE OBcontacts_temp (Data)
voor zover ik kan zien lijkt het ok. ik kan helaas geen andere map aanmaken naast tmp, heb ik geen rechten toe op de server denk ik. beetje brak. zoiezo een brakke server want parse errors laatie ook gewoon niet zienresulteert in n blanke pagina. maar goed.
1 2 3 | error_reporting(E_ALL); ?> |
Ja sorry, was iets vergeten in m'n voorbeeld. Je moet de session variabele natuurlijk ook als array zien. ikke_ook heeft de goede code gegeven die in jouw geval gewoon moet werkenquote:Op maandag 14 november 2005 12:44 schreef Lariekoek het volgende:
JeRa, hij geeft nu alleen de waarde uit het derde tekstveld terug. Wat mijn bedoeling is:
[..]
Ik loop nu te kloten met array's en sessies.
Misschien dat iemand een idee heeft hoe dit snel en makkelijk te maken is?
Doe je soms een stripslashes() op de data die je van MySQL binnen krijgt?quote:Op maandag 14 november 2005 21:39 schreef Chandler het volgende:
Ik zit met een klein probleempje http://nl3.php.net/mysql_escape_string gebruik ik nu maar als ik texten terug wil zetten in een textbox krijg ik rn rn te zien... en dat wil ik niet. Hoe kan ik dit converteren?want ik kan geen undo routine terug vinden op php.net?
Waarom doe je een stripslashes() op die data?quote:Op maandag 14 november 2005 22:07 schreef Chandler het volgende:
euhja hoezo?
maaruh dat doe ik pas nadat ik het probeer te converteren naar chr(13) etc
Vreem, je geeft al de ungreedy modifier (U) mee, dus het zou goed moeten gaan. Sterker nog, als ik 'm test dan werkt ie goedquote:Op maandag 14 november 2005 09:45 schreef Pronk het volgende:
Ik ben zelf bezig een SML parser te maken zodat ik het kan gebruiken voor mijn zelfgemaakte weblog.
Het werkt op zich perfect. Het enige probleem is dat als ik 1 van de SML codes dubbel gebruik, dan parsed mijn code bijvoorbeeld alleen de eerste en de laatste code.
Nu worden alleen de met ------ ondersteepte codes begrepen en de niet onderstreepte niet vervangen en gewoon weergeven.
[...]
floating.quote:Op dinsdag 15 november 2005 11:43 schreef Chandler het volgende:
@SuperRembo en dergelijke experts
Vandaag zat ik me te bedenken dat ik nog niet een persoonlijke link base heb, die ik overal kan benaderen en nu kwam ik met het volgende idee. Er zijn al genoeg sites waarop je je 'favorieten' kan zetten maar nu wil ik dit zelf eens gaan ontwikkelen.. echter heb ik al wat zaken uitgewerkt zoals een gedeelte van de databse en layout maar nu zit ik met het volgende probleem.
Ik heb 3 kolommen van links naar rechts en wil de 1e 2 gebruiken voor links in bepaalde catagorieen en de derde voor RSS feeds (altijd makkelijk) maar hoe krijg ik het voor elkaar dat ik de eerste twee kolommen goed benut zodat de ene kolom niet een km lang is en de ander een paar CM? hoe doet startpagina dat? zetten ze deze info ook vast in de database of gaat dit op een andere manier?
Gaarne jullie visie hierop!.
Je zet de links in een div met vaste breedte en hoogte. Die float je, de browser zet er dan zoveel naast elkaar als kan (en dat zijn er dan twee bijvoorbeeld).quote:Op dinsdag 15 november 2005 15:35 schreef Chandler het volgende:
Dat begrijp ik niet geheel!? wat heeft floating daar mee te makne? zou je een voorbeeld kunnen schetsen!?
Dan zul je even moeten kijken in de html van startpagina. Lijkt me simpel.quote:Op dinsdag 15 november 2005 17:05 schreef Chandler het volgende:
ah, en zo werkt startpagina dus ook?
1 2 3 4 5 6 7 | <body> <table><tr><td> test </td></tr></table> </body> </html> |
Hoe kan jij dat van 'buiten' zienquote:Op woensdag 16 november 2005 11:17 schreef Chandler het volgende:
Ik zie de laatste tijd nogal wat websites die geen gebruik maken van databases zoals MySQL en MsSql.. nu vraag ik me af hoe ze hun data dan bewaren en kunnen beheren.
Bij de inhoud van de mail moet je dan ook meegeven dat de inhoud html bevat.quote:Op woensdag 16 november 2005 17:30 schreef Desdinova het volgende:
Ik heb een mail() command gebruikt, maar wil graag de data die ik stuur (is in HTML format) ook in HTML format weergeven bij de ontvanger. Ik krijg nu plain HTML code. wat ik mail lijkt op:
[ code verwijderd ]
maar dat feest ging niet zo makkelijk door.. ik kijk vast over iets heeeel simpels heen.
fenks men!quote:Op woensdag 16 november 2005 17:35 schreef Jimmy het volgende:
[..]
Bij de inhoud van de mail moet je dan ook meegeven dat de inhoud html bevat.
Iets in de trant van:
$headers = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
en dan:
mail("piet@email.nl, "Subject", "Inhoud", $headers);
In de headers kun je ook informatie meesturen over de afzender, de reply-to etc.
Als je bijvoorbeeld een lading mysql_connect errors om je oren krijgtquote:Op woensdag 16 november 2005 17:32 schreef Aaargh! het volgende:
[..]
Hoe kan jij dat van 'buiten' zien
Nee ik weet dat ik geen sessies wil gebruiken, daarom wil ik nu een caching systeem gaan schrijven voor die website zoals ook wel wordt gebruikt op websites (weblogs etc) die werken zonder database.. en voor het geval dat bv de sessie verdwijnt dan wordt de sessie opnieuw gevuld met data van de disk..quote:Op woensdag 16 november 2005 12:01 schreef JeRa het volgende:
Data wil je niet in sessions opslaan Chandler, want sessions zijn tijdelijk. Dat betekent dat wanneer PHP vindt dat een session te oud is, je gegevens van je gallery kwijtraakt
Waarom wil je het zonder MySQL doen? Je kunt natuurlijk gaan werken met het inlezen van databestandjes, maar dat gaat bij al te grote galleries nogal traag werken.
[offtopic]
Die thumbnails op gallery.bruggema.nl, die zien er niet echt uitdaar kun je image_copy_resampled() voor gebruiken
Niet, dat kan je vrijwel nooit natuurlijk maar goed, ik kan natuurlijk wel checken op bepaalde websites die weblogs maken etc dat ze niet werken met mysql... kwam er laatst nog 1tje tegen in het updates deel van tweakers!quote:
Nee, in dit geval heb ik gewoon gekeken op de website van een maker... maar nu zit ik met de vraag hoe werkt een caching systeem, waar moet ik op letten etc!? want wil ik een cache controlleren dan moet ik natuurlijk weer info van de disk halen...etc..quote:Op woensdag 16 november 2005 19:09 schreef SuperRembo het volgende:
Als je bijvoorbeeld een lading mysql_connect errors om je oren krijgt
Maar normaal gescproken is het natuurlijk een gok.
Ik werk ook met een template systeem, waarin de inhoud wordt gevuld vanuit de database.quote:Op donderdag 17 november 2005 08:25 schreef Chandler het volgende:
Hoe werken jullie met caching!?
Werken met regex.quote:Op donderdag 17 november 2005 09:43 schreef mschol het volgende:
ik heb een klein vraagje..:
ik wil van een site een beoaad gedeeltje inlezen en dit opslaan in DB..
ik wil de site hier niet noemen maar ik heb wel gezien dat iemand iets soort gelijks heeft gedaan met zijn aantal posts per dag op fok..
(dus uitlezen profiel pagina dan posts eruit filteren en dan opslaan)
ik wil dit soort gelijks.
ik kan met
[ code verwijderd ]
zonder problemen de pagina in lezen en e.v.t. afdrukken op het scherm
maar hoe haal ik een specifiek getalletje eruit?
en dan moet fok maar eff als voorbeeld worden genomen...
Caching systemen zijn er genoeg... (Fok! wilde er laatst eentje proberen, was niet echt gelukt). Die werken door een hash van de request url te nemen en de geproduceerde pagina op te slaan in de cache. Vervolgens wordt bij een tweede request daar ook de hash van genomen, en in de cache gezocht of deze aanwezig is. Zo ja, dan wordt de vantevoren geproduceerde pagina voorgeschoteldquote:Op donderdag 17 november 2005 08:25 schreef Chandler het volgende:
[..]
Nee ik weet dat ik geen sessies wil gebruiken, daarom wil ik nu een caching systeem gaan schrijven voor die website zoals ook wel wordt gebruikt op websites (weblogs etc) die werken zonder database.. en voor het geval dat bv de sessie verdwijnt dan wordt de sessie opnieuw gevuld met data van de disk..
Het kan inderdaad met regexes, maar wat in het geval van een profielpagina efficiënter is, is het werken met substrings.quote:Op donderdag 17 november 2005 09:43 schreef mschol het volgende:
-knip-
Onder Linux gaat dat sowieso niet werken aangezien alles daar via het mailprogramma (sendmail, exim, etc) verloopt. Onder Windows kan het zijn dat het adres waarvan de e-mail wordt gestuurd een @home.nl-adres moet zijn, maar of dat zo is weet ik nietquote:Op donderdag 17 november 2005 22:08 schreef mooya het volgende:
Gebruiken meer mensen @Home thuis om PHP mee te testen? Ik krijg de mail functie niet voor elkaar.
Ik heb in mijn php.ini 'mail.home.nl' gezet als SMTP Server, maar php geeft een fout dat hij die niet kan benaderen. En in Outlook werkt het wel.
Dat mag geen issue zijn. Gewoon een kwestie van je mail server goed configureren, zodat de lokale mailserver alles eerst naar de @home mailserver schopt, die het dan verder mag versturen.quote:Op donderdag 17 november 2005 22:40 schreef JeRa het volgende:
[..]
Onder Linux gaat dat sowieso niet werken aangezien alles daar via het mailprogramma (sendmail, exim, etc) verloopt.
Dat is niet zo. Ik kan prima met mijn @fok adres als afzender mailen via de @home mailserver.quote:Onder Windows kan het zijn dat het adres waarvan de e-mail wordt gestuurd een @home.nl-adres moet zijn, maar of dat zo is weet ik niet
Het woordje 'dat' in mijn zin sloeg op het instellen van de SMTP-server in het bestand php.ini, zoals in de quote in mijn bericht staat. PHP draaiend onder Linux slaat die instellingen gewoon over en dat zal dus sowieso niet werken. Verder is het inderdaad een kwestie van goed instellen van je mailserverquote:Op donderdag 17 november 2005 22:52 schreef Light het volgende:
[..]
Dat mag geen issue zijn. Gewoon een kwestie van je mail server goed configureren, zodat de lokale mailserver alles eerst naar de @home mailserver schopt, die het dan verder mag versturen.
Dat is wel vreemd ja. Blijft hij op 'Connecting to etc...' staan?quote:Op donderdag 17 november 2005 23:17 schreef mooya het volgende:
Ik heb dit ingesteld:
[mail function]
; For Win32 only.
SMTP = mail.home.nl; for Win32 only
smtp_port = 25
sendmail_from= ikke@home.nl ; for Win32 only
Mar normaal zou telnet mail.home.nl 25 toch ook een reactie op moeten leveren? dat gebeurt nu ook niet..
Poort 21 is meestal FTP, geen SMTP. Voor uitgaande connecties heb je geen forward nodig, dat is meestal voor binnengaande connecties. Aangezien hij wel mail kan versturen met Outlook neem ik aan dat dat prima werkt, maar het blijft vreemd dat hij niet kan verbinden met mail.home.nl op poort 25quote:Op donderdag 17 november 2005 23:27 schreef Chandler het volgende:
heb je je pc direct op je modem of via een router? dan moet je eerst poortje 21 forwarden volgens mij maaruh bij mij werkte het perfect moet ik zeggen... alleen nu komt mijn mail van mijn alphaxs niet aan bij alle .home adressen
Ik geloof dat hij al had gezegd dat PHP een foutmelding gaf; namelijk dat hij niet met de SMTP-server kon verbinden. Standaard wordt het onder Windows niet in logfiles gestopt voor zover ik weet.quote:het zou echt moeten werken maar heeft hij al in zijn logfiles gekeken?
Dat heeft hij ook al gedaan, en dat lukt niet. Hij kan geen verbinding krijgen op poort 25 van de SMTP-server.quote:anders moet ie eff kijken wat er gebeurd als hij met telnet naar de smtp server connect..
kijken of hij dan iets terug krijgt?
Het ligt aan het feit dat ie niet kan verbinden met mail.home.nlquote:Op vrijdag 18 november 2005 08:32 schreef Chandler het volgende:
waar zou het dan nog aan kunnen liggen? kwan me heel weinig iets bij voorstellen
Laat hij alleen de records zien met een 03, in dat veld en dus niet de 01,02,03,. en als ik er % voor en achter zet geeft hij aan dat hij geen records gevonden heeft. zie voorbeeld.quote:SELECT `knsbib`.*
FROM knsbib
WHERE (`knsbib`.`BOUW_SYS`='03,')
Wie kan mij vertellen wat ik verkeert doequote:SELECT `knsbib`.*
FROM knsbib
WHERE (`knsbib`.`BOUW_SYS`='^%03,%')
Heb je het nu over allow_url_fopen? Dat heeft verder weinig te maken met de SMTP-instelling in php.ini of hoe PHP die afhandelt, dus dat lijkt me onwaarschijnlijkquote:Op vrijdag 18 november 2005 12:22 schreef cyberstalker het volgende:
Zou dat niet iets met url_fopen in php.ini kunnen zijn?
Ik weet het nie precies, maar als je die instelling uit hebt staan, kun je heel veel dingen niet. Sockets openen lukt bijvoorbeeld ook niet.quote:Op vrijdag 18 november 2005 13:57 schreef JeRa het volgende:
[..]
Heb je het nu over allow_url_fopen? Dat heeft verder weinig te maken met de SMTP-instelling in php.ini of hoe PHP die afhandelt, dus dat lijkt me onwaarschijnlijk
Was ff aan het werk vandaag, vandaar de late reactie.quote:Op vrijdag 18 november 2005 13:57 schreef JeRa het volgende:
[..]
Heb je het nu over allow_url_fopen? Dat heeft verder weinig te maken met de SMTP-instelling in php.ini of hoe PHP die afhandelt, dus dat lijkt me onwaarschijnlijk
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | $email_from = "Info" ; $returnpath_mail = "test@home.nl"; $email1 = "test@zonnet.nl"; $onderwerp = "Onderwerp"; $msg = "<html>\n"; $msg.= "<head>\n"; $msg.= "<META http-equiv=Content-Type content='html; charset=iso-8859-1'>\n"; $msg.= "</head>\n\n"; $msg .= "Hallo\n"; $msg .= "</body></html>"; $header = "From: $email_from<$returnpath_mail>\nReturn-path: $returnpath_mail\nContent-Type: text/html; charset=iso-8859-1"; mail($email1,$onderwerp,$msg, $header); ?> |
Maar mail() wordt afgehandeld door PHP zelf, en het lijkt me sterk dat PHP tegen z'n eigen beveiligingen aanlooptquote:Op vrijdag 18 november 2005 14:10 schreef cyberstalker het volgende:
[..]
Ik weet het nie precies, maar als je die instelling uit hebt staan, kun je heel veel dingen niet. Sockets openen lukt bijvoorbeeld ook niet.
Wat hij zegtquote:Op vrijdag 18 november 2005 16:35 schreef cyberstalker het volgende:
En als je er mail.mars.home.nl van maakt?
Heb je geupgrade naar de laatste versie van phpBB? Heb je beheer over die MySQL server of heb je 'm op een server staan die niet van jou is? De foutmelding slaat meestal op een pakket dat naar MySQL is verzonden en groter is dan de limiet die ingesteld is in MySQL. Dit duidt dus op een defecte zoekquery (phpBB) of een veel te lage limiet (MySQL).quote:Op vrijdag 18 november 2005 15:14 schreef Jojo_ut_Grun het volgende:
ik kreeg laat op mij eigen forumje (phpbb plus mysql)
...
SQL Error : 1153 Got a packet bigger than 'max_allowed_packet'
...
die foutmelding kreeg ik dan als ik gebruik wou maken van de zoek functie
Ik blijf het knap vinden dat Outlook Express kan connecten met mail.home.nl:25 en jij met telnet niet. Als we er nou eens achter konden komen waaróm nietquote:Op vrijdag 18 november 2005 17:45 schreef mooya het volgende:
werkt ook niet..
had ik ook al geprobeerd,
en outlook is normaal ingesteld zonder authenticatie
Ik snap er ook niks vanquote:Op vrijdag 18 november 2005 17:47 schreef JeRa het volgende:
[..]
Ik blijf het knap vinden dat Outlook Express kan connecten met mail.home.nl:25 en jij met telnet niet. Als we er nou eens achter konden komen waaróm nietOutlook Express gaat niet via een proxy?
ik heb de laatste versie van phpbbquote:Op vrijdag 18 november 2005 17:46 schreef JeRa het volgende:
[..]
Heb je geupgrade naar de laatste versie van phpBB? Heb je beheer over die MySQL server of heb je 'm op een server staan die niet van jou is? De foutmelding slaat meestal op een pakket dat naar MySQL is verzonden en groter is dan de limiet die ingesteld is in MySQL. Dit duidt dus op een defecte zoekquery (phpBB) of een veel te lage limiet (MySQL).
edit: een waarschijnlijke fout zou een te grote INSERT kunnen zijn voor de zoekresultaten. Het is namelijk mogelijk om in één query vele waarden tegelijk toe te voegen, dus misschien ligt het daaraan.
Even kort door de bocht (aangezien ik niet het fijne van phpBB weet). Ik weet dat phpBB de zoekresultaten tijdelijk opslaat in een tabel om vervolgens te tonen aan de gebruiker (zodat die de resultaten kan sorteren zonder dat alles opnieuw afgezocht moet worden). Als je nu een query uitvoert waarbij een hoop resultaten zijn, genereert phpBB een veel langere INSERT-query en dan krijg je die foutmeldingquote:Op vrijdag 18 november 2005 21:59 schreef Jojo_ut_Grun het volgende:
[..]
ik heb de laatste versie van phpbb
de mysql database staat op de server van mijn hosting bedrijf
het probleem lijkt dus opgelost door de mysql , het hosting bedrijf heeft de
my.cnf geedit.
maar mijn vraag is meer.. ho ehet kan dat een forum heel lang zonder problemen loopt
en dan plots de zoekfunctie niet meer wil, je die foutmelding krijgt
zou de database te groot worden
1 2 | WHERE id IN (1,3,9,4,25) |
Top, dan moet ik alleen weer kijken hoe ik de values bij de juiste ID krijg, maar dat moet lukkenquote:Op zaterdag 19 november 2005 12:36 schreef Light het volgende:
Met een query als
[ code verwijderd ]
kun je verschillende ID's gelijktijdig opgeven. Je zult alleen met implode je array met id's moeten omzetten naar zo'n komma-gescheiden string.
1 2 3 4 5 6 7 8 9 10 11 | $sqlArray=array(); foreach ($winkelwagen as $productId => $productAantal) { array_push($sqlArray, $productId); } $productQuery=implode(' OR product_id=', $sqlArray); $query="SELECT whatever FROM products WHERE (product_id={$productQuery});" ?> |
Slim, met een array_push een nieuwe array maken.quote:Op zaterdag 19 november 2005 12:38 schreef cyberstalker het volgende:
Je kunt dan toch gewoon gebruik maken van een sql-statement met een OR erin?
[ code verwijderd ]
Untested, uiteraard, je begrijpt het idee wel waarschijnlijk.
1 2 3 4 5 6 7 8 | $sqlArray=array(); foreach ($winkelwagen as $productId => $productAantal) { $sqlArray[] = $productId; } ?> |
Wat is daarvan precies het voordeel? Voor zover mij bekend is een array_push sneller dan toewijzen zonder key.quote:Op zaterdag 19 november 2005 12:54 schreef Light het volgende:
[ code verwijderd ]
Zelfde resultaat, en je gebruikt geen functies.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | session_start(); $sqlArray=array(); foreach($_SESSION['cart'] as $productId => $number){ array_push($sqlArray, $productId); $total=$total+$number; } $productQuery=implode(' || product_id=', $sqlArray); $query="SELECT * FROM produkten WHERE product_id=".$productQuery; $result=mysql_query($query); while($row=mysql_fetch_assoc($result)){ echo $row['articelcode'].' '.$row['name'].' aantal: '.$_SESSION['cart'][$row['product_id']].'<br />'; } ?> |
Ik was de juiste operator even kwijtquote:Op zaterdag 19 november 2005 13:23 schreef cyberstalker het volgende:
Twee dingetjes:Die regel met $total kun je ook schrijven als $total+=$number; .
Scheelt natuurlijk een implode. Even rommelen.quote:De IN operator werkt inderdaad ook prima, en is hier eigenlijk logischer.
1 2 3 4 5 6 7 8 9 10 | session_start(); $total = array_sum($_SESSION['cart']); $productIDs = array_keys($_SESSION['cart']); $query = "SELECT * FROM produkten WHERE product_id IN (" . implode(', ', $productIDs) . ")"; $result = mysql_query($query); while($row = mysql_fetch_assoc($result)){ echo $row['articelcode'].' '.$row['name'].' aantal: '.$_SESSION['cart'][$row['product_id']].'<br />'; } ?> |
ALTIJD is jouw code mooier dan wat ik verzinquote:Op zaterdag 19 november 2005 13:25 schreef SuperRembo het volgende:
Array_sum en array_keys kan je ook gebruiken. En idd IN zoals cyberstalker zegt, dat is sneller dan een serie OR's.
[ code verwijderd ]
Warning: mysql_connect(): Too many connections in /sys/www/fokcore/classes/db.class.php on line 26quote:Op woensdag 16 november 2005 19:09 schreef SuperRembo het volgende:
[..]
Als je bijvoorbeeld een lading mysql_connect errors om je oren krijgt
Maar normaal gescproken is het natuurlijk een gok.
Volgens php.net is toewijzen zonder key sneller dan array_push, omdat je in het laatste geval ook nog een functie-aanroep hebt. Overigens is array_keys een nog betere optie.quote:Op zaterdag 19 november 2005 13:01 schreef cyberstalker het volgende:
[..]
Wat is daarvan precies het voordeel? Voor zover mij bekend is een array_push sneller dan toewijzen zonder key.
Aha, dan is die hele array_push dus een knap nutteloze functie.quote:Op zaterdag 19 november 2005 15:45 schreef Light het volgende:
[..]
Volgens php.net is toewijzen zonder key sneller dan array_push, omdat je in het laatste geval ook nog een functie-aanroep hebt. Overigens is array_keys een nog betere optie.
Met array_push kun je ook meer dan 1 item bij de array aanplakken. Dat kan nog wel eens nuttig zijn.quote:Op zaterdag 19 november 2005 15:49 schreef cyberstalker het volgende:
[..]
Aha, dan is die hele array_push dus een knap nutteloze functie.
Waar vind je dat op php.net, want in de manual kom ik dit niet tegen.quote:Op zaterdag 19 november 2005 15:45 schreef Light het volgende:
[..]
Volgens php.net is toewijzen zonder key sneller dan array_push
quote:Note: If you use array_push() to add one element to the array it's better to use $array[] = because in that way there is no overhead of calling a function.
http://nl3.php.net/manual/nl/function.array-push.phpquote:
de NL vertaling van php.net is zowieso bagger..quote:Op zaterdag 19 november 2005 18:46 schreef Swetsenegger het volgende:
[..]
http://nl3.php.net/manual/nl/function.array-push.php
Niet in de nederlandse vertaling dusVind ik wel een beetje slordig, dat bij de vertaling info verdwenen is.
Ik gebruik beide. Maar als je toevallig een functie in het nederlands bekijk en er mist complete info, is het lastig om daar achter te komenquote:Op zaterdag 19 november 2005 23:56 schreef mschol het volgende:
[..]
de NL vertaling van php.net is zowieso bagger..
hele stukken missen of zijn verkeerd vertaald, darom gebruik ik altijd de engelse versie...
Volgens de php manual het is toch echt de juiste functiequote:Fatal error: Call to undefined function: mssql_connect()
Dat had ik dus niet gedaan.quote:Op maandag 21 november 2005 09:46 schreef Ro�a� het volgende:
Heb je je php.ini aangepast zodat mssql geactiveerd is?
Uiteraard staat hij daar wel. Op google vond ik wat info dat je de .dll dan in de windows en windows/system32 directory moet kopiëren, maar dat heeft ook geen resultaat.quote:Unknown(): Unable to load dynamic library 'C:\AppServ\\php\extensions\php_mssql.dll' - The specified module could not be found.
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 | <settings> <startpath>path</startpath> <fileitems>1</fileitems> <diritems>1</diritems> </settings> <directories> <dir> <name>dirname</name> <size>totalsize</size> <items>items</items> </dir> </directories> <files> <file> <name>filename</name> <size>232131</size> <date>10-10-1999</date> <time>12:24</time> <comments>0</comments> <x>211</x> <y>333</y> </file> </items> </xml> |
Ja, dat gaat zo niet werken, en wel vanwege het volgende:quote:Op maandag 21 november 2005 11:44 schreef Chandler het volgende:
Mensen ik heb even een vraag... ik wil een cache systeem bouwen die in PHP; XML files genereerd met directorie informatie..
een voorbeeld
[ code verwijderd ]
Hebben jullie tips en of sugesties? is wat ik nu heb ontworpen goed? of zitten er XML achtige fouten in ?
Als het goed is kan je dan de [R] parameter aan het einde van je rewrite rule doen:quote:Op maandag 21 november 2005 16:39 schreef DutchBlood het volgende:
Heeft er hier iemand verstand van Apache's mod_rewrite?
Stel, ik wil www.domein.com/abc/ laten redirecten naar www.domein.com/index.php?site=abc.
Iemand enig idee hoe ik dat doe? Ik heb al gegoogled en gevonden hoe ik url's vriendelijker kan maken, dus bv een nieuwsid oid gebruiken, maar simpel redirecten, hoe doe ik dat?
je kunt dit door middel van vaste rewrites doen (makkelijk, zie hierboven) of door middel van zogenaamde maps (minder makkelijk). Wellicht zou je kunnen overwegen om je pagina's adhv textbased keys te koppelen, dus:quote:Op maandag 21 november 2005 17:38 schreef DutchBlood het volgende:
Ik heb het wat krom geformuleerd.
Het zit zo:
domein.com/fotografie/ moet rewriten naar domein.com/site/index.php?id=1
domein.com/aboutme/ moet rewriten naar domein.com/site/index.php?id=2
Hoe doe ik dat?
Ach het is niet al te moeilijkquote:Op maandag 21 november 2005 17:38 schreef DutchBlood het volgende:
Ik heb het wat krom geformuleerd.
Het zit zo:
domein.com/fotografie/ moet rewriten naar domein.com/site/index.php?id=1
domein.com/aboutme/ moet rewriten naar domein.com/site/index.php?id=2
Hoe doe ik dat?
1 2 3 4 | RewriteBase / RewriteRule ^(.*)/$ site/index.php?id=$1 |
1 |
quote:Op maandag 21 november 2005 17:58 schreef DionysuZ het volgende:
[..]
Ach het is niet al te moeilijk
maak een .htaccess aan die je plaatst op het laagste niveau (bij domein.com/ dus)
In die .htaccess plaats je bijvoorbeeld deze regels:
[ code verwijderd ]
In deze laatste regel staat (.*) voor: er kan werkelijk alles staan
[ code verwijderd ]
zou volgens mij alleen maar letters en cijfers toelaten. Het is n beetje roestig bij me, iemand anders?
1 |
1 |
1 |
Ik ben m'n gallery aan het ombouwen van alle directories/bestanden in een sessie naar seperate XML files voor root en directories... omdat sessies eingelijk niet bedoeld zijn voor zo'n hoeveelheid aan dataquote:Op maandag 21 november 2005 12:09 schreef Ro�a� het volgende:
De vraag is wat je wilt bereiken.
Wat ben je aan het cachen en waarom?
De declaratie klopt en ook de foutieve node, maar verder? zouden jullie zaken anders aanpakken m.b.t het invullen van een XML file?quote:Op maandag 21 november 2005 12:09 schreef cyberstalker het volgende:
Ja, dat gaat zo niet werken, en wel vanwege het volgende:Je mist de XML-declaratie, iets als <?xml version="1.0" encoding="UTF-8"?> . Je sluit een node af met een niet matchende tag: <files> </items> .
Lichtelijk offtopic, maar ik ben vergeten waarom je ook alweer filebased aan het werken wasquote:Op maandag 21 november 2005 18:09 schreef Chandler het volgende:
[..]
Ik ben m'n gallery aan het ombouwen van alle directories/bestanden in een sessie naar seperate XML files voor root en directories... omdat sessies eingelijk niet bedoeld zijn voor zo'n hoeveelheid aan data
dat heb ik dus al in settings staanquote:Op maandag 21 november 2005 18:11 schreef DionysuZ het volgende:
Ik zou bij iedere file nog een ref-id naar de betreffende directory maken.
1 2 3 | <startpath>path</startpath> </settings> |
Omdat ik al zoveel zaken doe met betrekking tot een database, deze gallery wil ik zowel met en zonder een MySQL/MsSql database kan werken...quote:Op maandag 21 november 2005 18:22 schreef JeRa het volgende:
Lichtelijk offtopic, maar ik ben vergeten waarom je ook alweer filebased aan het werken waswaarom niet in een database?
1 |
Ja er zit weinig anders op vermoed ik.quote:Op maandag 21 november 2005 23:17 schreef SuperRembo het volgende:
Eerst het totaal ophogen, daarna pas formatten?
Vaak niet alleen logischer, maar als je berekeningen aan het uitvoeren bent is het meestal beter om pas op het laatst bewerkingen uit te voeren waardoor je significantie verliest. Tussentijds afronden zorgt voor grotere afrondingsfouten op het eindequote:Op dinsdag 22 november 2005 12:01 schreef cyberstalker het volgende:
Misschien mis ik iets, maar het is toch juist logischer om eenmalig het totaal te formatteren, dan tien (of meer) keer kleine stukjes?
Je keyword is cronjobquote:Op dinsdag 22 november 2005 12:14 schreef Desdinova het volgende:
Is het mogelijk om automatisch (dus zonder dat je n browser ervoor hoeft te openen) je database bij te werken?
Bijvoorbeeld;
ik wil elke dag, de berichten van eergisteren verwijderd hebben. dit kan natuurlijk vrij makkelijk door met je browser naar je php script tegaan waarin die query wordt uitgevoerd, maar dat kost me werk en dat wil ik natuurlijk volledig automatisch laten gaan.
Iemand een idee van hoe dit geregeld kan worden?
ah, cronjobs. die optie heb k in mn panelquote:Op dinsdag 22 november 2005 12:15 schreef JeRa het volgende:
[..]
Je keyword is cronjobals je toegang hebt tot de server waar je bestanden gehost worden kun je in een shell (SSH, telnet) met het commando 'crontab -e' je cronjobs instellen. Daarmee kun je vrij flexibel instellen op welke punten van de dag, week, maand, etc programma's of scripts worden uitgevoerd.
Heb je die toegang niet, dan zul je op je eigen computer een systeem moeten gebruiken dat om de zoveel tijd een script aanroept op die externe server
Waarschijnlijk is dat geen tijdsduur maar het tijdstip waarop het wordt uitgevoerd. Je kunt dan waarschijnlijk niet zomaar je .php-bestanden uitvoeren (kun je wel controleren, maar ik gok van niet).quote:Op dinsdag 22 november 2005 12:21 schreef Desdinova het volgende:
[..]
ik kan de tijdsduur kiezen en ik kan een command invoeren. is dat command gewoon n linkie naar mn php file?
He shit, dan zal ik toch al mijn tientallen bestandjes die wél werken met <?php moeten gaan aanpassen.quote:Op dinsdag 22 november 2005 12:24 schreef cyberstalker het volgende:
JeRa: die <?php dingen moet je dan ook weglaten.
ok heb ff gegoogled voor wat voorbeelden, en k ben er wel uit nuquote:Op dinsdag 22 november 2005 12:23 schreef JeRa het volgende:
[..]
Waarschijnlijk is dat geen tijdsduur maar het tijdstip waarop het wordt uitgevoerd. Je kunt dan waarschijnlijk niet zomaar je .php-bestanden uitvoeren (kun je wel controleren, maar ik gok van niet).
Vaak kun je dat oplossen door aparte php-bestanden te maken (niet zichtbaar maken voor web!):
#!/usr/bin/php
<?php
//Normaal script
?>
Is een number_formatted float dan een string?quote:Op dinsdag 22 november 2005 12:13 schreef JeRa het volgende:
En Swetsenegger, waarschijnlijk werd het een int omdat je een string erbij probeerde op te tellen?
Ja, maar ik heb twee verschillende totalen.quote:Op dinsdag 22 november 2005 12:01 schreef cyberstalker het volgende:
Misschien mis ik iets, maar het is toch juist logischer om eenmalig het totaal te formatteren, dan tien (of meer) keer kleine stukjes?
1 2 3 4 | aantal prijs totaal ---------------------------- aantallen totalen |
Ja.quote:Op dinsdag 22 november 2005 12:32 schreef Swetsenegger het volgende:
[..]
Is een number_formatted float dan een string?
Je kunt dat oplossen door de totalen met round() af te ronden op 2 decimalen. Je krijgt dan nog gewoon een float terug die je kunt optellen bij het totaal.quote:Op dinsdag 22 november 2005 12:35 schreef Swetsenegger het volgende:
[..]
Ja, maar ik heb twee verschillende totalen.
[ code verwijderd ]
zo dus
Wat ik nu dus doe is
totaal=number_format(aantal*prijs)
totalen=totaal+=
Dat is natuurlijk het probleem.quote:Op dinsdag 22 november 2005 12:40 schreef JeRa het volgende:
Als je vervolgens het gaat displayen op je pagina, dán pas moet je number_format() gaan gebruiken.
Een extra optelling in PHP zal, als je het 1.000.000x uitvoert, héél misschien een milliseconde verschillenquote:Op dinsdag 22 november 2005 14:06 schreef Swetsenegger het volgende:
[..]
Dat is natuurlijk het probleem.
...
maar dat is dus een extra handeling
Het is geen extra optelling, ik moet extra regels code schrijvenquote:Op dinsdag 22 november 2005 15:09 schreef JeRa het volgende:
[..]
Een extra optelling in PHP zal, als je het 1.000.000x uitvoert, héél misschien een milliseconde verschillendus daarvoor hoef je het niet te laten.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | class Voorbeeld { function Voorbeeld() { // Doe hier wat } function Ietsanders() { // Doe wat anders } } $dit = new Voorbeeld; ?> |
Werkt niet zonder javascript, en daar krijg ik ook geen melding van. Slordig.quote:Op dinsdag 22 november 2005 21:05 schreef Swetsenegger het volgende:
Liefhebbers om even te proberen?
http://pandora.edoorebeek.nl
pandora > bedels > zodiak staan te bestellen artikelen.
cart werkt, afrekenen nog niet.
Zonder javascript werkt 90% van de sites nietquote:Op dinsdag 22 november 2005 21:06 schreef cyberstalker het volgende:
[..]
Werkt niet zonder javascript, en daar krijg ik ook geen melding van. Slordig.
Ja ik had het wel even kunnen testen ja, maar ik wilde het gewoon even zeker wetenquote:Op dinsdag 22 november 2005 20:56 schreef JeRa het volgende:
@SkaterSam
Dat kloptdat had je zelf trouwens ook proefondervindelijk kunnen testen
Zulke functies noemen ze constructors, en worden aangeroepen als er een instantie van de klasse wordt gemaakt. Normaal zet je in zo'n functie initialisatiecode van de klasse zelf, waarmee je bv. de member variabelen gaat invullen of een default waarde geeft.
1 2 3 | $berichtmetsml = preg_replace("!\\[b\\](.*)\\[/b\\]!Usi","<span class='vet'>\\1</span>",$bericht); ?> |
Als ik alle plusjes open klik dan verschijnt het kopje "Aanbiedingen" ineens onder de copyright regel in Mozilla (Firefox). Het gaat wel goed in Konqueror, dus het lijkt met een typisch gecko-probleem.quote:Op dinsdag 22 november 2005 21:05 schreef Swetsenegger het volgende:
Liefhebbers om even te proberen?
http://pandora.edoorebeek.nl
pandora > bedels > zodiak staan te bestellen artikelen.
cart werkt, afrekenen nog niet.
Die uitroeptekens zijn delimiters - die geven aan wat de pattern is; namelijk datgeen wat tussen de twee delimiters staatquote:Op dinsdag 22 november 2005 21:16 schreef SkaterSam het volgende:
[..]
Ik zat dit even te bekijken, en ik vroeg me af waarom er ! in zitten, als ik de Pattern Syntax lees, zie ik nergens ! staan... En waarom die dubbele \\ overal? omdat het tussen dubbele quotes staat? want waarom dan [b\\] ?
Hmz....quote:Op dinsdag 22 november 2005 21:47 schreef Light het volgende:
[..]
Als ik alle plusjes open klik dan verschijnt het kopje "Aanbiedingen" ineens onder de copyright regel in Mozilla (Firefox). Het gaat wel goed in Konqueror, dus het lijkt met een typisch gecko-probleem.
Ik kan hem heel eenvoudig verwijderen, maar vind dat eigenlijk niet logisch. Stel je voor dat je per ongeluk een 0 invoert, moet je weer opnieuw gaan bestellen. En natuurlijk is het psychologische oorlogsvoering om TOCH dat product maar te kopenquote:En als ik iets heb gekozen en vervolgens het aantal in het mandje op 0 zet dan blijft het product nog steeds in de lijst staan. Ja, ik weet dat er ook een verwijder-knopje is, maar ik ben eigenwijs
Laten we even niet de mensen vergeten die 0 producten bestellen om zo voor slechts verzendkosten een lege doos en een aardige remboursjuffrouw aan de deur te krijgenquote:Op dinsdag 22 november 2005 22:22 schreef Swetsenegger het volgende:
Ik kan hem heel eenvoudig verwijderen, maar vind dat eigenlijk niet logisch. Stel je voor dat je per ongeluk een 0 invoert, moet je weer opnieuw gaan bestellen. En natuurlijk is het psychologische oorlogsvoering om TOCH dat product maar te kopen
Zit natuurlijk ook wat inquote:Op dinsdag 22 november 2005 22:22 schreef Swetsenegger het volgende:
Ik kan hem heel eenvoudig verwijderen, maar vind dat eigenlijk niet logisch. Stel je voor dat je per ongeluk een 0 invoert, moet je weer opnieuw gaan bestellen. En natuurlijk is het psychologische oorlogsvoering om TOCH dat product maar te kopen
Precies! Daar kunnen we er niet genoeg van hebbenquote:Op dinsdag 22 november 2005 22:34 schreef JeRa het volgende:
[..]
Laten we even niet de mensen vergeten die 0 producten bestellen om zo voor slechts verzendkosten een lege doos en een aardige remboursjuffrouw aan de deur te krijgen [afbeelding]
1 |
Een element van het hoogste niveau is net zoiets als <html></html> bij HTMLquote:Op woensdag 23 november 2005 00:25 schreef Chandler het volgende:
wat betekend dit
[ code verwijderd ]kom er niet uit namelijk
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 | <settings> <startpath>./privegallery/</startpath> <fileitems>7</fileitems> <filesize>85525</filesize> <diritems>4</diritems> </settings> <directories> <dir> <name>images</name> <subfiles>16</subfiles> <subsize>7067</subsize> <subdirs>0</subdirs> <date>2005-06-16</date> <time>17:02:26</time> </dir> <dir> <name>inc</name> <subfiles>3</subfiles> <subsize>36717</subsize> <subdirs>0</subdirs> <date>2005-06-16</date> <time>17:02:26</time> </dir> <dir> <name>layout</name> <subfiles>0</subfiles> <subsize>0</subsize> <subdirs>2</subdirs> <date>2005-06-16</date> <time>17:02:27</time> </dir> <dir> <name>uptool</name> <subfiles>10</subfiles> <subsize>57714</subsize> <subdirs>1</subdirs> <date>2005-11-23</date> <time>00:28:30</time> </dir> </directories> <files> <file> <name>admin.php</name> <size>36190</size> <date>2005-08-23</date> <time>15:01:01</time> </file> <file> <name>b.bat</name> <size>73</size> <date>2004-05-23</date> <time>14:41:02</time> </file> <file> <name>index.php</name> <size>31520</size> <date>2005-09-19</date> <time>12:16:58</time> </file> <file> <name>plugin.php</name> <size>10535</size> <date>2005-08-08</date> <time>10:40:20</time> </file> <file> <name>view.php</name> <size>7013</size> <date>2005-03-22</date> <time>05:57:40</time> </file> <file> <name>x.htaccess</name> <size>142</size> <date>2005-06-18</date> <time>08:15:01</time> </file> <file> <name>x.htpasswd</name> <size>52</size> <date>2004-05-23</date> <time>14:41:04</time> </file> </files> </xml> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | $test->init("./privegallery/", 14, ""); if ($test->openCache("test.xml") != true) { $test->buildDirCache(); $test->saveCache(); } $tmp = $test->openCache("test.xml"); if ($tmp != false) { echo $tmp; } else { echo 'Sorry, cache or new cache cannot be loaded'; } |
je hoeft <xml> helemaal niet te adden. Verander die <xml> en </xml> bijvoorbeeld in <cache> en </cache>, dan heb je meteen ook maar 1 toplevel element.quote:Op woensdag 23 november 2005 01:05 schreef Chandler het volgende:
owkee, dus nr 1 <xml> addenen hoe bedoel je dat met die toplevels? hoe moet ik dat aanpakken?
Je parser verwacht dat er maar één toplevel element is. Het toplevel is het laagste (of hoogste, hangt af van hoe je er naar kijkt) niveau van elementen. Bij de meeste HTML-pagina's is dit bv. <html>quote:Op woensdag 23 november 2005 01:05 schreef Chandler het volgende:
owkee, dus nr 1 <xml> addenen hoe bedoel je dat met die toplevels? hoe moet ik dat aanpakken?
Zowel in IE6 als IE7 gaat het fout. FF heb ik getest met 1.06. Ik heb er tot op heden nog niets aan veranderdquote:Op dinsdag 22 november 2005 23:50 schreef SuperRembo het volgende:
Ik weet niet of je er nog iets aan veranderd hebt, maar nu doet ie het bij mij in FF1.5 goed, maar in IE6 gaat 't fout.
Nog een puntje dat verbeterd kan worden: als de pagina nu opnieuw geladen wordt, dan flikert het menu even. Het lijkt erop dat je in de onload de menu's uitklapt. Dat zou je al direct goed kunnen zetten met php.
Je zet nu per uitgeklkapt menu-item een cookie. Ik las ergens dat er maximaal 20 cokkies per domain gezet kunnen worde. Ik weet niet of dat nog steeds geldt, maar misschien is het toch beter om al de menu-status cookies in 1 cookie te zetten (comma-separeted bijvoorbeeld).
Waarom? Je kunt toch gewoon een enkel element om je andere elementen heenzetten?quote:Op woensdag 23 november 2005 10:59 schreef Chandler het volgende:
ok... tnx maar reeds gefixt, snap nu hoe het opgebouwd moet worden... alleen jammer dat er niet meerdere toplevel elementen kunnen zijn
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 | <cache> <settings> <startpath>./privegallery/</startpath> <fileitems>5</fileitems> <filesize>85331</filesize> <diritems>4</diritems> </settings> <directories> <dir> <name>images</name> <subfiles>16</subfiles> <subsize>7067</subsize> <subdirs>0</subdirs> <date>2005-06-16</date> <time>17:02:26</time> </dir> <dir> <name>inc</name> <subfiles>3</subfiles> <subsize>36717</subsize> <subdirs>0</subdirs> <date>2005-06-16</date> <time>17:02:26</time> </dir> <dir> <name>layout</name> <subfiles>0</subfiles> <subsize>0</subsize> <subdirs>2</subdirs> <date>2005-06-16</date> <time>17:02:27</time> </dir> <dir> <name>uptool</name> <subfiles>10</subfiles> <subsize>57714</subsize> <subdirs>1</subdirs> <date>2005-11-23</date> <time>00:28:30</time> </dir> </directories> <files> <file> <name>admin.php</name> <size>36190</size> <date>2005-08-23</date> <time>15:01:01</time> </file> <file> <name>b.bat</name> <size>73</size> <date>2004-05-23</date> <time>14:41:02</time> </file> <file> <name>index.php</name> <size>31520</size> <date>2005-09-19</date> <time>12:16:58</time> </file> <file> <name>plugin.php</name> <size>10535</size> <date>2005-08-08</date> <time>10:40:20</time> </file> <file> <name>view.php</name> <size>7013</size> <date>2005-03-22</date> <time>05:57:40</time> </file> </files> </cache> |
Kun je daar niet gewoon een mooie XSLT stylesheet voor maken?quote:Op woensdag 23 november 2005 12:52 schreef Chandler het volgende:
ja dat snap ik, en heb ik ook reeds gedaan... zie uitkomst
[ code verwijderd ]
dit is nu ongeveer de opbouw, echter moet ik nu nog een conversie routine schrijven zodat ik XML weer om kan zetten naar de 'array'
Laat de query/relevante code eens zien die je uitvoert. Heb gisteren per ongeluk mijn glazen bol kapot laten vallenquote:
1 2 3 4 5 6 7 | $msg = preg_replace("/\r\n/","<br>\r\n",$_POST['content']); $query2 = "UPDATE news SET Titel='".$_POST['titel']."', Content='$msg', Auteur='".$_POST['auteur']."', Date='".$date."' WHERE ID = '".$_POST['ID']."'"; $result2 = mysql_query($query2); ?> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | $data = str_replace("<br />","",$row2[Content]); $data = str_replace("<br>","",$data); echo" <body> <form name=\"newnews\" enctype=\"multipart/form-data\" method=\"post\" action=\"input.php?edit=1\"> <table cellpadding=\"10\"><tr><td width=\"400\" > <p>Titel:<br>(plaats hier de titel van het bericht)<br> <input name=\"titel\" type=\"text\" size=\"80\" maxlength=\"200\" value=\"$row2[Titel]\"> </p> <p>Content:<br>(plaats hier het textbericht)<br> <textarea name=\"content\" cols=\"75\" rows=\"8\">$data</textarea> </p> <p>Door:<br>(plaats hier de auteur/bron)<br> <input type=\"text\" name=\"auteur\" value=\"$row2[Auteur]\"> </p> <p>Foto:<br>(u kunt hier bladeren naar een foto)<br> <input type=\"file\" name=\"file\"> </p> <p> </p></td> ?> |
Wat hij zegtquote:Op woensdag 23 november 2005 16:19 schreef DionysuZ het volgende:
Ik zou dit toch wat veiliger maken want deze code is erg sqlinjectiegevoelig!
Hoe bedoel je? de term XSLT stylesheet ken ik niet...quote:Op woensdag 23 november 2005 13:35 schreef cyberstalker het volgende:
Kun je daar niet gewoon een mooie XSLT stylesheet voor maken?
En je google is toevallig ook nog kapot. http://www.w3schools.com/xsl/quote:Op woensdag 23 november 2005 17:03 schreef Chandler het volgende:
[..]
Hoe bedoel je? de term XSLT stylesheet ken ik niet...
je moet geen enkele input vertrouwenquote:Op woensdag 23 november 2005 17:02 schreef Desdinova het volgende:
mm, maar dit is allemaal achter n login. dat dan alsnog n probleem?
Moet je voorstellen dat iemand een apostrofe (') in de titel zet. Kijk dan nog eens naar je queryquote:Op woensdag 23 november 2005 17:02 schreef Desdinova het volgende:
mm, maar dit is allemaal achter n login. dat dan alsnog n probleem?
Nou, doe eens een echo $query2 om te zien waar de fout zit als de query failedquote:Op woensdag 23 november 2005 17:23 schreef Desdinova het volgende:
get_magic_quotes dinges staat standaard aan, dus dat wordt afgevangen
1 |
1 |
1 |
Je moet dan ook htmlentities() gebruiken voor de value van input-elementen:quote:Op woensdag 23 november 2005 17:34 schreef Desdinova het volgende:
heb ik gedaan, hij heeft geen $_POST data ontvangen van de titel...
Ik ben nog bezig met mod_rewrite.quote:Op maandag 21 november 2005 18:08 schreef DionysuZ het volgende:
Als je het zo wil kan het gewoon met
[ code verwijderd ]
1 |
1 |
ik heb het zojuist getest en het werkt gewoonquote:Op woensdag 23 november 2005 19:50 schreef DutchBlood het volgende:
[..]
Ik ben nog bezig met mod_rewrite.
Ik heb nu bv de regel
[ code verwijderd ]
Nu wil ik alleen het zo creeren dat /photography/index rewrite naar /site/index.php.
Nu kan ik het wel per bestand uitschrijven, maar kan het ook makkelijker?
Ik heb nu dit, maar dat werkt niet:
[ code verwijderd ]
Die misc is geen map, maar een andere rewrite regel.quote:Op woensdag 23 november 2005 20:05 schreef DionysuZ het volgende:
[..]
ik heb het zojuist getest en het werkt gewoon
als ik
http://www.blalalalal.nl/misc/index/
invul, dan rewrite hij die naar
http://www.blalalalal.nl/misc/site/index.php
1 2 | RewriteRule ^misc/([a-zA-Z0-9]+)/$ site/$1.php |
Ze vallen goed over de linkerrand van de content layer. Alleen komen ze onder de bovenste border te zitten. Ook onder de onderste border van de catogorie(Home > Pandora > Bedels > Goud).quote:Op woensdag 23 november 2005 21:08 schreef Swetsenegger het volgende:
Kan iemand even op http://pandora.edoorebeek.nl met IE6 kijken?
Het gaat erom of de submenus goed over de maincontent layer heen komt (z-index). Het gaat in alle browser goed, maar in IE7 beta niet.
En het vervelende is dat IE7 over IE6 heen geinstalleerd wordt en ik hier nu geen IE6 meer heb om te testen
Kan je even een screenshot maken?quote:Op woensdag 23 november 2005 21:14 schreef DutchBlood het volgende:
[..]
Ze vallen goed over de linkerrand van de content layer. Alleen komen ze onder de bovenste border te zitten. Ook onder de onderste border van de catogorie(Home > Pandora > Bedels > Goud).
quote:Op woensdag 23 november 2005 21:20 schreef Swetsenegger het volgende:
[..]
Kan je even een screenshot maken?
Ik denk dat het hetzelfde probleem is als met IE7, maar dan begrijp ik er geen ruk van waarom hij m'n z-index niet pakt
Dank je wel, inderdaad hetzelfde probleem.quote:
In Firefox (Ubuntu) is het hele menu geupfucked. Klopt dat?quote:Op woensdag 23 november 2005 21:08 schreef Swetsenegger het volgende:
Kan iemand even op http://pandora.edoorebeek.nl met IE6 kijken?
Het gaat erom of de submenus goed over de maincontent layer heen komt (z-index). Het gaat in alle browser goed, maar in IE7 beta niet.
En het vervelende is dat IE7 over IE6 heen geinstalleerd wordt en ik hier nu geen IE6 meer heb om te testen
In FF (Windows) ook.quote:Op woensdag 23 november 2005 21:35 schreef JeRa het volgende:
[..]
In Firefox (Ubuntu) is het hele menu geupfucked. Klopt dat?
Gewoon 1.0.7quote:Op woensdag 23 november 2005 21:49 schreef Swetsenegger het volgende:
Dan weet ik niet met welke firefox jullie kijken, want bij mij doet hij het prima op XP, Mandrake en MacOSX in FF
He is teh rite!quote:Op woensdag 23 november 2005 21:51 schreef freiss het volgende:
Hij doet het overigens bij een (harde) refresh het weer wel![]()
Dat is voor zover ik weet de / die vanuit buiten bereikbaar is, ik wil de naar /httpdocs/-niveau.quote:Op woensdag 23 november 2005 22:47 schreef Jimmy het volgende:
Vanuit een link?
Dan is het <a href="/">Linktext</a>
/ vanuit html is de meest upper directory die je vanaf je webserver kunt bereiken. Ik begrijp niet helemaal wat je bedoelt.quote:Op woensdag 23 november 2005 22:51 schreef DutchBlood het volgende:
[..]
Dat is voor zover ik weet de / die vanuit buiten bereikbaar is, ik wil de naar /httpdocs/-niveau.
Ik gebruik mod_rewrite, maar op het moment dat er dus bijvoorbeeld /photography/index/ in de browserbalk staat, kan de browser de css niet meer vinden. Hij zoekt die in ../site/stylez.css. Als er simpelweg / in balk zou staan vind ie 'm, maar nu dus niet.quote:Op woensdag 23 november 2005 23:02 schreef cyberstalker het volgende:
[..]
/ vanuit html is de meest upper directory die je vanaf je webserver kunt bereiken. Ik begrijp niet helemaal wat je bedoelt.
Gebruik dit in je <head></head>-element:quote:Op woensdag 23 november 2005 23:04 schreef DutchBlood het volgende:
[..]
Ik gebruik mod_rewrite, maar op het moment dat er dus bijvoorbeeld /photography/index/ in de browserbalk staat, kan de browser de css niet meer vinden. Hij zoekt die in ../site/stylez.css. Als er simpelweg / in balk zou staan vind ie 'm, maar nu dus niet.
je kunt ook map/(.*) laten verwijzen naar /$1quote:Op woensdag 23 november 2005 22:44 schreef DutchBlood het volgende:
Even nogal basic html:
Hoe kan ik in html verwijzen naar de / op de webserver? Met ../ kun je een map omhoog, maar helemaal naar de documentroot, hoe doe ik dat?
Of een andere oplossing zodat mijn css's blijven werken terwijl ik mod_rewrite gebruik?
Ah bedankt voor de tip!quote:Op woensdag 23 november 2005 22:52 schreef SuperRembo het volgende:
@Swetsenegger:
Als je met een oude explorer versie (3, 4, 5, 5.5) wil testen dan kan dat.Ik weet niet of zoiets ook voor IE6 bestaat.
Dat is toch raar dat iedereen welke de eerste kijkt met ff de submenu items niet zietquote:Ik zag met FF1.5 geen submenu items, behalve casio. Maar blijkbaar heb je 't nu weer veranderd, want nu zie ik alleen nog maar 3 hoofdmenuitems.
Ik begrijp geen zak van je postquote:Op donderdag 24 november 2005 01:33 schreef the_disheaver het volgende:
Hoi!
Ik heb een template-html bestandje waar mogelijk php-variable instaan.
Hoe kan ik de $variable in de template wijzigen door de waarde van de template?
Moet toch wel makkelijker kunnen dan een preg_replace waar ik nu mee probeer te knoeien?
1 |
1 2 3 | $x = 15; ?> |
1 |
mja dat is alles.. ik ga het even proberen met htmlentities. daarna breng ik weer verslag uitquote:Op woensdag 23 november 2005 19:04 schreef JeRa het volgende:
[..]
Je moet dan ook htmlentities() gebruiken voor de value van input-elementen:
echo '<input type="text" name="blaat" value="' . htmlentities($blaat) . '" />';
Maar verder zie ik niet aan je code wat er mis kan zijn. Is dit echt alle relevante code?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | <body> <form name="newnews\" enctype=\"multipart/form-data\" method=\"post\" action=\"input.php?edit=1\"> <table cellpadding=\"10\"><tr><td width=\"400\" > <p>Titel: <input name=\"titel\" type=\"text\" size=\"80\" maxlength=\"200\" value=\"$row2[Titel]\"> </p> <p>Content:<br <textarea name=\"content\" cols=\"75\" rows=\"8\">$data</textarea> </p> <p>Door <input type=\"text\" name=\"auteur\" value=\"$row2[Auteur]\"> </p> <p>Foto: <input type=\"file\" name=\"file\"> </p> <p> </p></td> ?> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | <form name="newnews" enctype="multipart/form-data" method="post" action="input.php?edit=1"> <table cellpadding="10"><tr><td width="400" > <p>Titel: <input name="titel" type="text" size="80" maxlength="200" value="<?=$row2[Titel];?>"> </p> <p>Content:<br <textarea name="content" cols="75" rows="8"><?=$data;?></textarea> </p> <p>Door <input type="text" name="auteur" value="<?=$row2[Auteur];?>"> </p> <p>Foto: <input type="file" name="file"> </p> <p> </p></td> |
dan ontbreekt je slash sowieso in de form name en je hebt je vars niet buiten quotes gehaald. zeker bij $row['whatever'] werkt dat nietquote:Op donderdag 24 november 2005 11:05 schreef Desdinova het volgende:
omdattie zelf de <? en ?> erbij zet door de [php tag. t is in n echo
Ok, dan is er geen enkel probleemquote:Op donderdag 24 november 2005 11:21 schreef Desdinova het volgende:
slashes in de formname staan er, ook dat heeft die php tag gefucked. (die werkt niet zo goed eigenlijk)
ook de vars doen het prima. ze staan er als $row[whatever], en die data wordt gewoon keurig ingevuld bij weergave van het form.
De output van mount verwerken?quote:Op donderdag 24 november 2005 12:28 schreef Chandler het volgende:
een kleine; weet iemand hoe je alle diskdrives kan detecteren? zowel de schrijfbare als de niet schrijfbare? in php dus wel te verstaan
Windows? en wat is mount?quote:Op donderdag 24 november 2005 12:37 schreef cyberstalker het volgende:
[..]
De output van mount verwerken?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | /dev/sda1 on / type ext3 (rw) proc on /proc type proc (rw) sysfs on /sys type sysfs (rw) devpts on /dev/pts type devpts (rw,gid=5,mode=620) tmpfs on /dev/shm type tmpfs (rw) usbfs on /proc/bus/usb type usbfs (rw) tmpfs on /lib/modules/2.6.12-9-amd64-generic/volatile type tmpfs (rw,mode=0755) /home on /chroot/home type none (rw,bind) /tmp on /chroot/tmp type none (rw,bind) /dev on /chroot/dev type none (rw,bind) /proc on /chroot/proc type proc (rw) /media/cdrom0 on /chroot/media/cdrom0 type none (rw,bind) /media/cdrom1 on /chroot/media/cdrom1 type none (rw,bind) /media/cdrom2 on /chroot/media/cdrom2 type none (rw,bind) /media/cdrom3 on /chroot/media/cdrom3 type none (rw,bind) /usr/share/fonts on /chroot/usr/share/fonts type none (rw,bind) tmpfs on /dev type tmpfs (rw,size=10M,mode=0755) |
kan volgens mij alleen met los proggie...quote:Op donderdag 24 november 2005 12:28 schreef Chandler het volgende:
een kleine; weet iemand hoe je alle diskdrives kan detecteren? zowel de schrijfbare als de niet schrijfbare? in php dus wel te verstaan
Helaas voldoet mount niet aan de omschrijvingen. Mount kan niet álle diskdrives laten zien die zowel schrijfbaar als niet-schrijfbaar zijn, namelijk degene die niet gemount zijn laat ie achterwegequote:Op donderdag 24 november 2005 14:27 schreef cyberstalker het volgende:
mount is geen external progje. mount is een standaard-onderdeel van POSIX-compliant systemen.
Windows is niet POSIX-compliant, en je zult het daarop dus niet kunnen gebruiken.
http://fia181-83.dsl.hccnet.nl/fok/HardDiskDrive.rarquote:Op donderdag 24 november 2005 14:21 schreef Chandler het volgende:
ok, dacht dat dit wel vrij simpel kon met php ofzo... misschien een bestandje proberen te maken en error vangen ofzo?open en schrijven anders read only
maar goed ik zal ff zoeken..
-- gezocht; werkt zover ik kan zien ook met mount (external progie) maar't zou toch ook zonder extra progie moeten willen?
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 | function getDriveStats($drive) { if (strlen($drive) == 1) { $drive = $drive . ":"; } $exists = @stat($drive); if ($exists != false) { $free = disk_free_space($drive); $total = disk_total_space($drive); $driveinfo['space'] = $total; $driveinfo['used'] = $total; $driveinfo['free'] = 0; if ($total != 0) { $driveinfo['free'] = $free; $driveinfo['used'] = $total - $free; } return $driveinfo; } return false; } for ($x = 0; $x < 26; $x++) { $info = getDriveStats(chr(65+$x)); echo 'drive ' . CHR(65+$x); if ($info == false) { echo ' does not exists <br />'; } else { echo ' exists and is ' . $info['space'] . ' bytes big and has ' . $info['free'] . ' bytes free<br />'; } } ?> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | php $string = 'cup'; $name = 'coffee'; $str = 'This is a $string with my $name in it.'; echo $str. "\n"; eval("\$str = \"$str\";"); echo $str. "\n"; /* output: This is a $string with my $name in it. This is a cup with my coffee in it. */ ?> |
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 | $MySQL_Download_Assoc['Filesize'] = "3634512123"; // 3,384903187863528728485107421875 GB if($MySQL_Download_Assoc['Filesize'] <= 1024) { $Filesize = number_format($MySQL_Download_Assoc['Filesize'] / 1024, 1, ",", ".") . " KB"; } elseif($MySQL_Download_Assoc['Filesize'] >= 1025 OR $MySQL_Download_Assoc['Filesize'] <= 1048576) { $Filesize = number_format($MySQL_Download_Assoc['Filesize'] / (1024 * 1024), 1, ",", ".") . " MB"; } elseif($MySQL_Download_Assoc['Filesize'] >= 1048577 OR $MySQL_Download_Assoc['Filesize'] <= 1073741824) { $Filesize = number_format($MySQL_Download_Assoc['Filesize'] / (1024 * 1024 * 1024), 1, ",", ".") . " GB"; } else { $Filesize = number_format($MySQL_Download_Assoc['Filesize'] / (1024 * 1024), 1, ",", ".") . " MB"; } echo $Filesize; ?> |
Dit werkt (in mijn geval) nog beter.quote:Op donderdag 24 november 2005 19:03 schreef JeRa het volgende:
@the_disheaver
Je kunt voor jouw toepassingen veel beter alsnog gebruik maken van preg_replace, en kijken naar hoe (simpele) template parsers dit doen. Een standaard vervanging van een enkele variabele met preg_replace is vrij simpel, met arrays wordt het ietsjes complexer maar dat valt ook op dezelfde manier op te vangen
1 2 3 4 5 6 7 8 9 10 11 | $vars = array (); $vars [ "title" ] = "Titeltje"; $vars [ "content" ] = "Inhoud"; foreach ( $vars as $key => $value ) $template = str_replace ( '{' . $key . '}', $value, $template ) echo $template; |
1 2 3 4 5 6 7 8 | <head> <title>{title}</title> </head> <body> <p>{content}</p> </body> </html> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | if ($size <= 1024 ) { $s = number_format($size, 0, ',', '.') . ' bytes'; } else if ($size <= 1024 * 1024) { $s = number_format($size / 1024, 1, ',', '.') . ' kB'; } else if ($size <= 1024 * 1024 * 1024) { $s = number_format($size / (1024 * 1024), 1, ',', '.') . ' MB'; } else if ($size <= 1024 * 1024 * 1024 * 1024) { $s = number_format($size / (1024 * 1024 * 1024), 1, ',', '.') . ' GB'; } else { $s = number_format($size / (1024 * 1024 * 1024 * 1024), 1, ',', '.') . ' TB'; } return $s; } |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | 10 bytes = 10 bytes 100 bytes = 100 bytes 1000 bytes = 1.000 bytes 10000 bytes = 9,8 kB 100000 bytes = 97,7 kB 1000000 bytes = 976,6 kB 10000000 bytes = 9,5 MB 100000000 bytes = 95,4 MB 1000000000 bytes = 953,7 MB 10000000000 bytes = 9,3 GB 100000000000 bytes = 93,1 GB 1000000000000 bytes = 931,3 GB 10000000000000 bytes = 9,1 TB 3634512123 bytes = 3,4 GB |
Thnx, eigenlijk werkt alles in mijn site met functies (1 function library php file met meer dan 2000 regels code)quote:Op donderdag 24 november 2005 21:18 schreef SuperRembo het volgende:
Zoals al gezegd, als je al weet dat een getal niet <= 1024 is, dan hoef je daarna niet te controleren of het >= 1025 is
Wat er nou precies fout gaat zie ik niet zo 1, 2, 3. Je code is niet zo overzichtelijk door die overbodige controle en doordat overal $MySQL_Download_Assoc['Filesize'] staat. Dit is typisch iets wat je makkelijker in een functie zet.
[ code verwijderd ]
Resultaten:
[ code verwijderd ]
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | $MySQL_Download_Assoc['Filesize'] = "3634512123"; // 3,384903187863528728485107421875 GB if($MySQL_Download_Assoc['Filesize'] >= 1073741824) $Filesize = number_format($MySQL_Download_Assoc['Filesize'] / (1024 * 1024 * 1024), 1, ",", ".") . " GB"; }elseif($MySQL_Download_Assoc['Filesize'] >= 1025 OR $MySQL_Download_Assoc['Filesize'] >= 1048576){ $Filesize = number_format($MySQL_Download_Assoc['Filesize'] / (1024 * 1024), 1, ",", ".") . " MB"; }elseif($MySQL_Download_Assoc['Filesize'] >= 1048577 OR $MySQL_Download_Assoc['Filesize'] >= 1024){ $Filesize = number_format($MySQL_Download_Assoc['Filesize'] / 1024, 1, ",", ".") . " KB"; }else{ $Filesize = number_format($MySQL_Download_Assoc['Filesize'], 1, ",", ".") . " Bytes"; } echo $Filesize; ?> |
1 |
1 |
Die b moet een hoofdletter B zijn in dat scriptjequote:Op donderdag 24 november 2005 21:18 schreef Chandler het volgende:
http://www.phpfreakz.nl/library.php?sid=17556
het kan nog beter trouwens, zie de comments in dit scriptje
De waarde in de elseif functie was verkeerd ipv de waarde van de variablequote:Op donderdag 24 november 2005 21:26 schreef ikke_ook het volgende:
wat the_disheaver zegt idd, die fout heb ik er in bovenstaand script uitgehaald.
de groter dan functie eruit gehaald, en een '{' toegevoegd.quote:Op donderdag 24 november 2005 21:24 schreef ikke_ook het volgende:
zo dan :
[ code verwijderd ]
-edit-
Ik geloof dat ik een beetje laat ben met mn reactie
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | $MySQL_Download_Assoc['Filesize'] = "3634512123"; // 3,384903187863528728485107421875 GB if($MySQL_Download_Assoc['Filesize'] >= 1073741824){ $Filesize = number_format($MySQL_Download_Assoc['Filesize'] / (1024 * 1024 * 1024), 1, ",", ".") . " GB"; }elseif($MySQL_Download_Assoc['Filesize'] >= 1048576) { $Filesize = number_format($MySQL_Download_Assoc['Filesize'] / (1024 * 1024), 1, ",", ".") . " MB"; }elseif($MySQL_Download_Assoc['Filesize'] >= 1024){ $Filesize = number_format($MySQL_Download_Assoc['Filesize'] / 1024, 1, ",", ".") . " KB"; }else{ $Filesize = number_format($MySQL_Download_Assoc['Filesize'], 1, ",", ".") . " Bytes"; } echo $Filesize; ?> |
Nee, ik denk dat je dan met Regular Expressions aan de slag moet.quote:Op donderdag 24 november 2005 18:31 schreef the_disheaver het volgende:
Het is me nu gelukt met de eval() functie. Maar niet optimaal.
(ik wil dat de variable in een variable gewijzigd wordt door de waarde van de variable)
ff ter verduidelijkin:
[ code verwijderd ]
Maar het werkt niet als ik een variable als '$conf['form'] gebruik.
Kan ie ook zo'n soort variable eval'en?
Dat zou moeten kunnen met unset.quote:Op vrijdag 25 november 2005 14:05 schreef Desdinova het volgende:
kan ik mn $_GET data verwijderen? dus dattie halverwege mn PHP file de $_GET['test'] leeg maakt bijvoorbeeld.
1 2 3 4 | $MySQL_Online_Select = "SELECT count(`Datum`) FROM Online WHERE IdUser = '" . addslashes($_SESSION['IdLid']) . "'"; $MySQL_Online_Query = mysql_result($MySQL_Online_Select,0); ?> |
1 |
Gebruik mysql_error() om te zien waar de fout in de query zitquote:Op vrijdag 25 november 2005 17:10 schreef wobbel het volgende:
Krijg stomme fout bij deze code
[ code verwijderd ]
MySQL connectie is gewoon gemaakt. Tabel Online bestaat, IdUser veld bestaat en Datum bestaat ook.
Er zitten trouwens GEEN rijen in de tabel, maar dat hoeft toch niet...ben toch dom aan het tellen
Error:
[ code verwijderd ]
Krijg ik dezelfde errorquote:Op vrijdag 25 november 2005 17:15 schreef JeRa het volgende:
[..]
Gebruik mysql_error() om te zien waar de fout in de query zit
1 |
Doe eensquote:Op vrijdag 25 november 2005 17:17 schreef wobbel het volgende:
[..]
Krijg ik dezelfde error
[ code verwijderd ]
[afbeelding]
dan krijg ik helemaal geen error in beeldquote:Op vrijdag 25 november 2005 17:25 schreef JeRa het volgende:
[..]
Doe eens
$result = @mysql_query(...)
or die(mysql_error());want die warning komt niet van mysql_error() af
owjah, met query erbijquote:Op vrijdag 25 november 2005 17:40 schreef Ro�a� het volgende:
<?php
$MySQL_Online_Select = "SELECT count(`Datum`) FROM Online WHERE IdUser = '" . addslashes($_SESSION['IdLid']) . "'";
$MySQL_Online_Query = mysql_query($MySQL_OnlineSelect);
$MySQL_Online_Result = mysql_result($MySQL_Online_Query,0);
?>
Gruwelijk scherpquote:Op vrijdag 25 november 2005 17:40 schreef Ro�a� het volgende:
<?php
$MySQL_Online_Select = "SELECT count(`Datum`) FROM Online WHERE IdUser = '" . addslashes($_SESSION['IdLid']) . "'";
$MySQL_Online_Query = mysql_query($MySQL_OnlineSelect);
$MySQL_Online_Result = mysql_result($MySQL_Online_Query,0);
?>
mysql_result is fijn met count queries:quote:Op vrijdag 25 november 2005 17:42 schreef JeRa het volgende:
[..]
Gruwelijk scherp [afbeelding] ik gebruik mysql_result() nooit, dus ik las er gelijk overheen
Ik heb tot nu toe alle talen waarin ik regelmatig iets schrijf (PHP, C/C++, Java) zelf geleerd door:quote:Op vrijdag 25 november 2005 20:08 schreef Onderbroek het volgende:
klein vraagje over het leren van php/html:
toen jullie begonnen met php/html etc, hoe zijn jullie begonnen met het onder de knie krijgen van deze 'talen'?
Gebruik gemaakt van een boek of website?..van iemand anders afgekeken?
Ik ben een jaar of 10 terug begonnen met html. Die codes kan ik ondertussen wel dromen, hoewel ik nog af en toe wel eens een tag moet opzoeken wanneer dit een weinig gebruikte tag is.quote:Op vrijdag 25 november 2005 20:08 schreef Onderbroek het volgende:
klein vraagje over het leren van php/html:
toen jullie begonnen met php/html etc, hoe zijn jullie begonnen met het onder de knie krijgen van deze 'talen'?
Gebruik gemaakt van een boek of website?..van iemand anders afgekeken?
Ikzelf kan 'al' () een simpele html website maken in dreamweaver maar ik ken (jammergenoeg) de codes niet om het bijvoorbeeld in kladblok te maken. \
Ik ben nu bezig met php met behulp van een boek (academic service; php5), maar het gaat allemaal moeizaam. De oefeningen gaan zonder probleem want het is een kwestie van overtypen. Soms moet je zelfstandig iets aanpassen e.d....dat lukt allemaal redelijk.
Maar het is allemaal zo onoverzichtelijk met de vele codes die je op je afgevuurd krijgt.
Mijn vraag is nu; hoe hebben jullie geleerd om uit de blote kop html/php codes te leren zonder te spieken in een boek of maken jullie toch gebruik van een boek/e.d.?
* wobbel herkent zich daarinquote:Op vrijdag 25 november 2005 21:10 schreef Chandler het volgende:
Ik heb het geleerd door te spelen met bestaande sources oftewel het veranderen van html codes en dan zien wat er gebeurd, css moest ik wel leren via w3c maar toch... voor php ging dit het zelfde, ben helaas niet zo'n boeken leerder (wou dat ik dat was maar goed soms heb ik het wel geprobeerd hoor) maar wat ik al zei, veel voorbeelden bekijken en kijken wat nu wat doet.. dan weer iets kleins maken en kijkn of het lukt, voor iedere commando is/zijn er wel referenties te vinden op het internet...
Dan is 2 tabellen compleet overbodig.quote:Op zaterdag 26 november 2005 13:30 schreef Desdinova het volgende:
maar stel nou dat er max 1 per item kan?
Nu kan ik via forms het catalogusnummer (in dit geval LIQWEED002) en de side (in dit geval A) opgeven. De side wordt gekozen uit een lijst. Nu heb ik die lijst door laten lopen tot de letter K. Het komt natuurlijk vaak voor dat een plaat alleen kant A en B heeft. Als iemand bij een bepaald catalogusnummer dan toch de letter K opgeeft, bestaat de file niet. Wat er dan gebeurd, is dat de file alsnog in realplayer (of real alternative met wmp classic) wordt geopend, maar dat er dan in de player zelf de error wordt gegeven dat de file niet bestaat.quote:
Je weet zeker dat Onwaar en Waar er met een hoofdletter uit komt rollen?quote:Op zaterdag 26 november 2005 23:23 schreef morpheus_at_work het volgende:
ik loop tegen een voor mij raak probleemje aan
ik heb een werkende functie , die geeft als return waarde Waar en Onwaar eruit , dit zie ik ook
als een echo op de functie doe.
nu wil ik de output van de functie gebruiken om te bepalen of iets mag gebeuren of niet
dus ik doe
[code]
if (check_login() == 'Onwaar') { "blabla"; }
if (check_login() == 'Waar') { "blabla"; }
hij laat nu zowel de 1ste if en 2de if niet zien
ik loop nu stuk op wat er nu fout gaat , want er is geen error te bekennen
iemand een aanwijzing.
1 2 3 4 5 6 7 | if (check_login() == 'Waar') { //doe iets } else{ //doe het niet } ?> |
1 2 3 4 5 | $check_login = check_login(); if ($check_login == 'Onwaar') { "blabla"; } if ($check_login == 'Waar') { "blabla"; } ?> |
1 2 | <?=strlen(functienaam());?> |
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |