Houd er trouwens rekening mee dat een single quote ( ' ) niet hetzelfde is als een double-quote ( " ). Een single quote is sneller, omdat vanuit wordt gegaan dat het alleen tekst is. In een double quote kunnen ook newlines, tabs, variablen, etc staan.quote:Op donderdag 2 augustus 2007 00:18 schreef Geqxon het volgende:
[..]
Omdat ik nog nooit met classes in PHP gewerkt heb.
Leuk om te zien dat het dus nog beter kan, dit is voor mij easy peasy.
Ja PHP word steeds volwassenerquote:Op donderdag 2 augustus 2007 00:18 schreef Geqxon het volgende:
[..]
Omdat ik nog nooit met classes in PHP gewerkt heb.
Leuk om te zien dat het dus nog beter kan, dit is voor mij easy peasy.
Register globals? Ik ontwikkel dagelijks voor osCommerce, in de versie waar ik op werk heb ik daar nog weinig van gemerkt.quote:Op donderdag 2 augustus 2007 08:31 schreef WyriHaximus het volgende:
Word het ook, PHP4 -> PHP5 is al traag. Daarnaast ligt het ook aan wat de community maakt. osCommerce is een bagger product wat nog steeds erg veel gebruikt word. Maar wel op register_globals draait. Helaas nog erg vaak gebruikt word. Is misschien een kut voorbeeld maar dit soort dingen houden wel de overgang tegen.
Omdat het de taak van de constructor is om het object in eerste instantie aan te maken (en de variabelen in te vullen), en het de taak van de setter is om in een later stadium de boodschap te wijzigen. Ik begrijp dat je op deze manier redundatie hebt, dus ik begrijp waar je het over hebt.quote:Op donderdag 2 augustus 2007 08:57 schreef Scorpie het volgende:
Waarom word er in de constructor eigenlijk niet de setter aangeroepen in die messagebar class?
De laatste milestone (2.2 afaik) heeft nog steeds register globals nodigquote:Op donderdag 2 augustus 2007 09:30 schreef Geqxon het volgende:
[..]
Register globals? Ik ontwikkel dagelijks voor osCommerce, in de versie waar ik op werk heb ik daar nog weinig van gemerkt.
Mij staat inderdaad wel bij dat ik daar standaard wel geklooi mee had, ik gok dat ik een geupdate versie draai.
Dan gok ik dat ik inderdaad een verbeterde versie heb. Ik moet zeggen dat ik het niet een geweldig product vind, maar ook weer niet gigantisch kut. Zoals ik zei, ik werk er dagelijks mee, develop er veel mee, en met name de database en de hoofdfuncties zitten goed in elkaar.quote:Op donderdag 2 augustus 2007 09:32 schreef WyriHaximus het volgende:
[..]
De laatste milestone (2.2 afaik) heeft nog steeds register globals nodig. Maar volgens mij zijn er idd mensen die het opgepakt hebben en flink verbeterd hebben ondertussen
.
Werk er zeer weinig mee en het is gelukkig een 1 malige opdrachtquote:Op donderdag 2 augustus 2007 09:34 schreef Geqxon het volgende:
[..]
Dan gok ik dat ik inderdaad een verbeterde versie heb. Ik moet zeggen dat ik het niet een geweldig product vind, maar ook weer niet gigantisch kut. Zoals ik zei, ik werk er dagelijks mee, develop er veel mee, en met name de database en de hoofdfuncties zitten goed in elkaar.
Ik kan trouwens aanraden om er gelijk BTS (Basic Template System) op te zetten.
| 1 2 | FROM forumberichten |
Round() is je beste vriendquote:Op donderdag 2 augustus 2007 16:17 schreef GSMboy het volgende:
Iemand had mij per MSN ooit geholpen met deze query.
je kan hiermee dus het percentage zien van posts in het forum van het totaal.
[ code verwijderd ]
Maar nu geeft hij bijv. aan:
96,6343
Hoe gaan we dit afronden in deze query op 1 decimaal.
Op 5 decimalen vind ik ook weer overdreven
ROUND($getal, 1)quote:Op donderdag 2 augustus 2007 17:37 schreef GSMboy het volgende:
en hoe verwerken we dat in de query, dat hij afrond op 1 decimaal?
Je doet ook geen while of for loopquote:Op donderdag 2 augustus 2007 18:00 schreef BaggerUser het volgende:
raar probleempje...
if($i <= 4)
{
echo'hoi';
$i++;
}
hij echo'd wel hoi.. maar hij verhoogd $i niet ?..
$i blijft de hele tijd op 1 staan... rara ?
het staat dus in een while lus, hadi k er niet bij gezegd... moment:quote:Op donderdag 2 augustus 2007 18:02 schreef Scorpie het volgende:
[..]
Je doet ook geen while of for loop![]()
for($i=0;$i<=4;$i++)
{
echo "hoi";
}
of
while($i<=4)
{
echo "hoi";
$i++;
}
Jij bent echt te lui :{quote:Op donderdag 2 augustus 2007 18:10 schreef GSMboy het volgende:
[..]
Liefst in de query. Hoe doen we dat?
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | if($i <= 4) { echo'hoi'; $i++; } echo $i; echo mysql_result($res, 0)."<br />"; $_SESSION['gedeeld'] = "TRUE"; $i++; ?> |
klopt maar hij zet hem bij geen van beid eomhoog.. vandaar dat ik op een gegeven moment overal $i++; had staan... snap er niks van! theoretisch zou het gewoon omhoog moeten die $i ...quote:Op donderdag 2 augustus 2007 18:16 schreef Scorpie het volgende:
BaggerUser:
[ code verwijderd ]
Zo zet je iig 2x de waarde van $i omhoog, zowel in de $i <= 4 gedeelte als helemaal onderaan.
Dat is sowieso fout.
Weet je zeker dat je query een resultaat opleverd?quote:Op donderdag 2 augustus 2007 18:19 schreef BaggerUser het volgende:
[..]
klopt maar hij zet hem bij geen van beid eomhoog.. vandaar dat ik op een gegeven moment overal $i++; had staan... snap er niks van! theoretisch zou het gewoon omhoog moeten die $i ...
| 1 |
Dat sowieso.quote:Op donderdag 2 augustus 2007 18:28 schreef DorentuZ het volgende:
[..]
Weet je zeker dat je query een resultaat opleverd?
Ik weet ff niet of dit nu ook als boolean wordt gezien, maar imo kan je beter 1 of true gebruiken.
Nee, het lukte niet, ik had ee ROUND() verkeerd geplaatstquote:Op donderdag 2 augustus 2007 18:14 schreef JortK het volgende:
[..]
Jij bent echt te lui
[ code verwijderd ]
| 1 |
die heten backticksquote:Op donderdag 2 augustus 2007 19:13 schreef GVRuud het volgende:
misschien `` eromheen zetten (geen enkele quotes maar dat ding dat op je tilde ~ toets zit)
Whehe.quote:Op donderdag 2 augustus 2007 18:57 schreef WyriHaximus het volgende:
Als ik deze uitvoer
[ code verwijderd ]
Krijg ik deze error:
Error -13, cannot find table `life`, please use table `nolife` instead.
Iemand een idee?
Dat kan:quote:Op donderdag 2 augustus 2007 20:23 schreef Swetsenegger het volgende:
Hallo
Na een nogal hectisch jaar ben ik weer eens aan het php'en geslagen voor een klein opdrachtje. En daarvoor had ik gelijk een vraag... Is het mogelijk een attachment mee te sturen met mail()
| 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 | // Mail opstellen $Attachment = fread($TmpFile,filesize($TmpFilename)); $Attachment = chunk_split(base64_encode($Attachment)); $MailHeaders = "From: Emailformulier <" . $AfzenderEmailadres . ">n"; $MailHeaders .= "MIME-Version: 1.0n"; $MailHeaders .= "Content-Type: multipart/mixed;n"; $MailHeaders .= "tboundary="XX-1234DED00099A"n"; $MailHeaders .= "Content-Transfer-Encoding: 7bitnn"; $MailHeaders .= "This is a multi-part message in MIME format.nn"; $MailHeaders .= "--XX-1234DED00099An"; $MailHeaders .= "Content-Type: text/plain; charset=us-asciin"; $MailHeaders .= "Content-Transfer-Encoding: 7bitnn"; $MailHeaders .= $TekstEmailBericht . "n"; $MailHeaders .= "--XX-1234DED00099An"; $MailHeaders .= "Content-Type: application/octet-stream; n"; $MailHeaders .= "tname="formulier-csv.txt"n"; $MailHeaders .= "Content-Transfer-Encoding: base64n"; $MailHeaders .= "Content-Description: formulier-csv.txtnn"; $MailHeaders .= $Attachment; $MailHeaders .= "--XX-1234DED00099A--"; if( mail($OntvangerEmailadres,$OnderwerpEmailBericht,"",$MailHeaders) == FALSE ) { $Message = "Het bericht kon niet worden verzonden. Probeer het nogmaals."; } else { $Message = "Het formulier is verzonden"; } |
| 1 2 3 4 5 6 7 8 9 10 11 12 | if($currentPage <= $i) { if($currentPage == 0) { $next1 = $currentPage+4; } Else { $next1 = $currentPage+3; } } |
Ik weet niet wat jij allemaal aan het doen ben, maar ik tel simpelweg eerst het aantal reacties, deel dat door het aantal reacties per pagina, en weet zo dus het totaal aantal pagina's.quote:Op donderdag 2 augustus 2007 20:50 schreef BugWorks het volgende:
Ik ben bezig met het maken van een gastenboek. Het hele gastenboek werkt goed, maar het probleem dat ik heb doet zich voor bij het maken van de “vorige/volgende” pagina links.
Het is de bedoeling dat het uit als volgt uitziet:
<< < a b c D e f g > >>
<< en >> zijn de eerste en laatste pagina
< en > zijn de vorige en volgende pagina (indien het kan)
a, b en c zijn de 3 voorgaande pagina’s (indien het kan)
D is de huidige pagina
e, f en g zijn de 3 volgende pagina’s (indien het kan)
Het probleem dat zich voordoet is als volgt:
Ik heb nu, tijdens het testen, ongeveer 15 berichten in het gastenboek staan. Ik heb aangegeven dat ik 10 berichten op een pagina wil hebben. Als ik via een directe link naar het gastenboek ga krijg ik bij de pagina links het volgende “<< < X d e f > >>”. Dit terwijl ik eigenlijk alleen “<< < X d > >>” behoor te krijgen. Als ik eenmaal gebruik heb gemaakt van deze links en dus weer op de eerste pagina sta, krijg ik wel het goede te zien.
Ik maak gebruik van de volgende code om “f” te berekenen. “d” en “e” worden op een iets andere manier berekent, enkele getallen verhogen of verminden met 1.
[ code verwijderd ]
Ik weet dat er iets niet klopt aan bovenstaande, maar ik weet niet waar ik het moet veranderen. Kan iemand me hier mee helpen? Alvast bedankt.
Hier heb je volgens mij de attachement base64 encode. Waarom?quote:Op donderdag 2 augustus 2007 20:40 schreef GVRuud het volgende:
[..]
Dat kan:
[ code verwijderd ]
formulier-csv.txt is de bestandsnaam van de attachment, en verder wijst het zich volgensmij wel voor zich.
Hmm de n's worden vernaggeld. Zie http://www.ruudsimons.nl/mail.phps
Het probleem is inmiddels al opgelost. Ik doe het op bijna dezelfde manier, alleen maak ik geen gebruik van een whilelus maar heb ik voor iedere stap een ifstatement zoals ik gaf. Whilelus was net iets te lastig om te maken.quote:Op donderdag 2 augustus 2007 20:59 schreef Swetsenegger het volgende:
[..]
Ik weet niet wat jij allemaal aan het doen ben, maar ik tel simpelweg eerst het aantal reacties, deel dat door het aantal reacties per pagina, en weet zo dus het totaal aantal pagina's.
Vervolgens stap ik met een whilelus door het aantal pagina's heen en maak ik linkjes van alles wat 2 stappen voor en 2 stappen na mijn huidige pagina zit. met de rest doe ik niets.
www.123swets.com/gastenboek.php
Staat er weer, zag niet in waarom ik het zou laten staanquote:Op donderdag 2 augustus 2007 21:05 schreef Swetsenegger het volgende:
waarom delete je je volledige originele vraag
Het is een forum... daar blijven dingen staan. Dat kan nog eens als naslag werk dienen voor anderen.quote:Op donderdag 2 augustus 2007 21:09 schreef BugWorks het volgende:
[..]
Staat er weer, zag niet in waarom ik het zou laten staan![]()
Ok, thanks ik denk dat ik het begrijp...quote:Op donderdag 2 augustus 2007 21:09 schreef GVRuud het volgende:
Header is een beetje een rare omschrijving, omdat in principe de mail alleen uit een header bestaat. Daar voeg je dan allerlei velden aan toe. Als ik t goed heb zal PHP via de mail functies de parameters zelf in die header toevoegen. Door het content-type: multipart/mixed mee te geven vertel ik dat het emailbericht in meerdere delen is opgedeeld, waarvoor ik de scheiding maak door middel van de boundary (welke een willekeurige string mag zijn, als deze maar niet in bijvoorbeeld de tekst van je mailbericht voorkomt).
Voor iedere multipart geef je dus een content-type op.
De base64 encoding van de data wordt gedaan om er voor te zorgen dat rare tekens je mailbericht niet in de soup laten lopen (iets met rare tekentjes enzo die bv in binaire bestanden voorkomen). Volgens de RFC waarin het versturen van attachments wordt beschreven (kan zo ff 123 niet vinden) is het zelfs verplicht. In principe kun je een textuele attachment zoals ik in t stukje script gebruik zonder deze encoding versturen, maar ik denk dat t een goede gewoonte is om attachments altijd te encoden.
Je leest dus een bestand in en schrijft de gelezen data inderdaad base64 encoded weg in je mailheader.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | while(list($key,$val)=each($posts)){ $where='ID=''.$val.'' OR '; } $where=substr($where,0,-3); $d=connectDB(); $r=runquery("SELECT ID,parent_ID FROM forum WHERE ".$where." ORDER BY last_active",$d); $new_post=mysql_result($r,0,"ID"); if($parent==''){ $parent_ID=mysql_result($r,0,"parent_ID"); } else{ $parent_ID=$parent; } while($row=mysql_fetch_array($r)){ $res=runquery("UPDATE forum SET parent_ID='".$new_post."' WHERE ID='".$row["ID"]."'",$d); } $res=runquery("UPDATE forum SET parent_ID='".$parent_ID."', level='2', forum_subject=".quote_smart($subject,$d)." WHERE ID='".$new_post."'",$d); $data=main_content('Gelukt','Nieuw topic aangemaakt in '.$parent_ID,'m'); ?> |
| Forum Opties | |
|---|---|
| Forumhop: | |
| Hop naar: | |