imagecopymerge verneukt inderdaad al de 'bestaande' transparency in een PNG. Met http://nl2.php.net/manual/en/function.imagecopyresampled.php imagecopy schijnt het met wat omweggetjes mogelijk te zijn wat jij wil. Ik heb het zelf eerlijk gezegd ook nog nooit geprobeerd daar ik deze situatie nog nooit ben tegengekomen, maar als ik de reacties op beide pagina's lees is het wel degelijk mogelijk.quote:Op donderdag 26 maart 2009 15:50 schreef SuperRembo het volgende:
Ik heb ook eens een vraag
Ik heb een functie om een watermark aan een plaatje toe te voegen. Dat werkt op zich prima, alleen zou ik de opacity van de watermark makkelijk willen kunnen aanpassen.
[ code verwijderd ]
Het probleem is dat imagecopymerge alle transparatie uit het watermark plaatje zelf weggooit. Met imagecopy blijft die informatie wel behouden, maar dan kan ik er dus niets aan tweaken via php.
gebruik het zend framework welke in zich heel veel gebruikt maakt van patterns oa singeltons, factory's,chain of command, mvc.quote:Op dinsdag 24 maart 2009 19:24 schreef Scorpie het volgende:
Welk pattern gebruiken jullie om objecten aan te maken binnen jullie applicatie? Voor domain objecten lijkt mij een DomainObjectFactory class handig, die elke keer 1 instantie van een object retourneert?
Of gebruiken jullie een generieke oplossing voor al jullie objecten?
1 |
1 2 3 4 | $sql = "SELECT website, www_website, http_www_website, cat_1 FROM ww WHERE cat_1 LIKE'cat1%'"; $resultaat = mysql_query($sql); ?> |
1 2 3 | echo "<a target='blank' rel='nofollow' href='".$row["http_www_website"]."'>".$row["website"]."</a><br />"; ?> |
1 2 3 | echo "<a target='blank' rel='nofollow' href='".$row["http_www_website"]."' onClick='javascript: pageTracker._trackPageview('/outgoing/auto_accessoires/".$row["www_website"]."'")">".$row["website"]."</a><br />"; ?> |
Moet dit worden:quote:Op donderdag 26 maart 2009 17:39 schreef klusmeister het volgende:
1
2
3<?php
echo "<a target='blank' rel='nofollow' href='".$row["http_www_website"]."' onClick='javascript: pageTracker._trackPageview('/outgoing/auto_accessoires/".$row["www_website"]."'")">".$row["website"]."</a><br />";
?>
1 2 3 4 5 6 7 | echo "<a target='blank' rel='nofollow' href='".$row["http_www_website"] . "' onClick='javascript: pageTracker._trackPageview('/outgoing/auto_accessoires/" . $row["www_website"]. "')>" .$row["website"]. "</a><br />"; ?> |
Het werkt! Bedankt!quote:Op donderdag 26 maart 2009 17:55 schreef slacker_nl het volgende:
[..]
Moet dit worden:
[ code verwijderd ]
1 |
Hmm.. Hij werkt wel (je ziet hem op de site) maar de klik wordt niet vastgelegd door analytics.quote:Op donderdag 26 maart 2009 17:55 schreef slacker_nl het volgende:
[..]
Moet dit worden:
[ code verwijderd ]
De fout zit niet bij de ( maar bij de ' erna. Daar moet een \ voor. Ook voor de ' aan het eind van die url moet een \ en na de ) moet nog een '.quote:Op donderdag 26 maart 2009 19:59 schreef klusmeister het volgende:
[..]
Hmm.. Hij werkt wel (je ziet hem op de site) maar de klik wordt niet vastgelegd door analytics.
Het gaat volgens firefox fout bij het onClick='javascript: pageTracker._trackPageview('/outgoing/auto_accessoires/www.carfantasy.nl')>
gedeelte (vanaf /outgoing en verder wordt het rood aangegeven)
Ik ga nog even proberen.
[ afbeelding ]
edit : Ik kan na bij (' de ' wel weglaten maar dan wordt de uitgaande klik niet meer vastgelegd
Als ik je aanwijzing opvolg krijg ik hem zo:quote:Op donderdag 26 maart 2009 20:16 schreef Light het volgende:
[..]
De fout zit niet bij de ( maar bij de ' erna. Daar moet een \ voor. Ook voor de ' aan het eind van die url moet een \ en na de ) moet nog een '.
1 |
ik zit een beetje met de " (de dubbele versie ivm gebruik php).quote:Op donderdag 26 maart 2009 20:26 schreef qu63 het volgende:
maak er eens onClick="javascript: pageTracker._trackPageview('/outgoing/auto_accessoires/www.carfantasy.nl')"> van?
1 2 3 | echo "<a target='blank' rel='nofollow' href='".$row["http_www_website"]."' onClick='javascript: pageTracker._trackPageview('/outgoing/auto_accessoires/".$row["www_website"]."')>".$row["website"]."</a><br />"; ?> |
Nee, die dingen moet je niet weghalen.quote:Op donderdag 26 maart 2009 20:26 schreef klusmeister het volgende:
[..]
Als ik je aanwijzing opvolg krijg ik hem zo:
[ code verwijderd ]
Maar dan werkt het ook niet, moet ik de ''s dan weghalen?
Ja, dat hele stuk in het rood geeft dus aan dat het nog niet goed is.quote:Op donderdag 26 maart 2009 20:32 schreef klusmeister het volgende:
[..]
ik zit een beetje met de " (de dubbele versie ivm gebruik php).
[ code verwijderd ]
Dit is de code nu, maar legt de klik niet vast resultaat:
[ afbeelding ]
1 2 3 | echo '<a target="blank" rel="nofollow" href="'.$row['http_www_website'].'" onClick="javascript: pageTracker._trackPageview(\'/outgoing/auto_accessoires/'.$row['www_website'].'")\'>'.$row['website'].'</a><br />'; ?> |
quote:Op donderdag 26 maart 2009 20:34 schreef Light het volgende:
[..]
Nee, die dingen moet je niet weghalen.
Als je bij die attributen altijd ".." gebruikt en bij javascript '..' dan heb je geen conflicten met begin en einde van een string. En dan krijg je dus iets zoals wat qu63 schrijft.
1 2 3 | echo "<a target='blank' rel='nofollow' href='".$row["http_www_website"]."' onClick="javascript: pageTracker._trackPageview('/outgoing/auto_accessoires/".$row["www_website"]."')">".$row["website"]."</a><br />"; ?> |
quote:
Oh dank je, dit is code die ik zelf geschreven hebquote:Op donderdag 26 maart 2009 16:20 schreef Catch22- het volgende:
ik zou even een kant en klaar scriptje zoeken, die image classes zijn echt brak vaak.
Je kunt ook eerst php afsluiten, dan je html doen, en dan php weer openen. Scheelt je een hoop gedoe met " en 'quote:Op donderdag 26 maart 2009 21:06 schreef klusmeister het volgende:
[..]in html is het voor mij geen probleem, maar in php krijg ik het (nog
) niet voor elkaar om ze om te draaien, krijg continue parse error expected enz
Mijn probleem heeft niet specifiek iets met watermarks te maken.quote:Op donderdag 26 maart 2009 21:17 schreef Catch22- het volgende:
@Superrembo, ik ben daar ook eens mee bezig geweest. Is echt vrij gaar om te doen. Helemaal als je met verschillende bestandsformaten werkt.
http://www.hotscripts.com/listing/image-resize-and-watermark/
is dat wat? googlede ik zo even
ja, maar vaak gaan die standaardscripts uit van transparante pngs voor een watermerk, dus dan zit je gelijkt goedquote:Op donderdag 26 maart 2009 22:34 schreef SuperRembo het volgende:
[..]
Mijn probleem heeft niet specifiek iets met watermarks te maken.
Het probleem is dat imagecopymerge de alpha-transparantie weg gooit. Imagecopy doet het wel goed, maar daar heb je niet de mogelijkheid om de transparantie van het hele plaatje aan te passen.
dit is gewoon basissemantiek hoor.quote:Op donderdag 26 maart 2009 21:06 schreef klusmeister het volgende:
[..]in html is het voor mij geen probleem, maar in php krijg ik het (nog
) niet voor elkaar om ze om te draaien, krijg continue parse error expected enz
Alleen als "weer" een constante is. Het is iig geen variabele, want er staat geen $ voor. En het is geen functie, want er staat geen () achter. Het is ook geen string, want die moet tussen quotjes staan.quote:Op donderdag 26 maart 2009 23:56 schreef Dawnbreaker het volgende:
nvm opgelost:
<a href="<?php echo $siteurl.weer;?>"> linkje </a> is de correcte php code
1 |
Idd, maar op 1 pagina komen 100derden links, dan wordt het qua code erg onoverzichtelijk..quote:Op donderdag 26 maart 2009 21:17 schreef Light het volgende:
[..]
Je kunt ook eerst php afsluiten, dan je html doen, en dan php weer openen. Scheelt je een hoop gedoe met " en '
Thanks, ga wel eens ff kijken!quote:Op donderdag 26 maart 2009 16:43 schreef hoerezooi het volgende:
[..]
gebruik het zend framework welke in zich heel veel gebruikt maakt van patterns oa singeltons, factory's,chain of command, mvc.
1 2 3 | echo '<a target="blank" rel="nofollow" href="'.$row['http_www_website'].'" onClick="javascript: pageTracker._trackPageview(\'/outgoing/auto_accessoires/'.$row['www_website'].')"\'>'.$row['website'].'</a><br />'; ?> |
Als je door de enorm lange code niet meer ziet wat je aan het doen bent, breek het dan gewoon op in begrijpelijke stukken! Zo ziet je code er uit als je het opbreekt in een paar logische stukken:quote:Op vrijdag 27 maart 2009 09:41 schreef klusmeister het volgende:
Met deze code:
[ code verwijderd ]
komt het er zo:
[ afbeelding ]
uit te zien.. bijna(?) dus, iemand nog een idee wat ik kan proberen om de uitgaande klik goed te kunnen meten?
1 2 3 4 5 6 | $url = $row['http_www_website']; $onclick = 'javascript: pageTracker._trackPageview(\'/outgoing/auto_accessoires/'.$row['www_website'].')'; $linkText = $row['website']; echo '<a target="blank" rel="nofollow" href="'.$url.'" onClick="'.$onclick.'"\'>'.$linkText.'</a><br />'; ?> |
Ook dan blijf ik met het ' verhaal zitten.quote:Op vrijdag 27 maart 2009 11:07 schreef Roy_T het volgende:
Met Rembo eens. Wel een typo op regel 5: een \' die er niet hoort(na de onclick)
En net omdat ik de fout niet kan ontdekken kwam ik hier voor hulp..quote:Op vrijdag 27 maart 2009 11:25 schreef SuperRembo het volgende:
Ik heb de code alleen opgeknipt in logische stukken. Alle fouten staan er inderdaad nog in.
Maar dat kan je toch ook in je voordeel gebruiken, door de broncode uit FF te kopieren? Want die is dan al "gefixed" of werkt dat niet?quote:Op vrijdag 27 maart 2009 10:16 schreef ralfie het volgende:
je moet de laatste 'en " nog omdraaien
Mag ik je een tip geven? als je broncode wil controleren, doe dit nooit in Firefox (als het gaat om quotes ed). Sure, het ziet er overzichtelijker uit, maar Firefox heeft de neiging om de broncode her en der al wat te fixen, door elementen en quotes en dergelijke toe te voegen en weg te halen. Ben er al vaker ingetuind, uren mn php doorgespit waar dat ene element of quoteje nou vandaan komt...
De broncode van Firefox is niet 100% dat wat de browser van de server krijgt, dat van bijvoorbeeld internet explorer is dat altijd wel. Ik gebruik IE nooit, behalve voor broncode's...
Nee helemaal niet, integendeel, soms is een zet in de goede richting erg fijn, ik ben alweer een stuk verder gekomen door eerder advies hier.quote:Op vrijdag 27 maart 2009 11:31 schreef SuperRembo het volgende:
Wil je een paar tips om fouten op te sporen en in de toekomst te voorkomen, of heb je liever dat iedereen telkens al je typfoutjes komt fixen
Firebug wel, maar Firefox "view source" niet.quote:Op vrijdag 27 maart 2009 10:16 schreef ralfie het volgende:
Sure, het ziet er overzichtelijker uit, maar Firefox heeft de neiging om de broncode her en der al wat te fixen, door elementen en quotes en dergelijke toe te voegen en weg te halen.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | class Modules { var $modules = array(); function __construct() { $dir = opendir("../modules"); while (false !== ($file = readdir($dir))) { if (is_dir("../modules/$file") && !preg_match("/\.\.?/", $file)) { $mod = new Module($file); array_push($this->modules, $mod); } } } } ?> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | class Module { var $templatedir; var $linkname; function __construct($name) { $this->templatedir = "../modules/".$td."/templates"; if(file_exists("../modules/$name/$name.php")) require("../modules/$name/$name.php"); if(file_exists("../modules/$name/$name_admin.php")) require("../modules/$name/$name_admin.php"); } function getModuleByName($name) { foreach($this->modules as $module) { if ($module->name == $name) { return $module; } } } } ?> |
1 2 3 | $modules->getModuleByName("agenda")->index($args); ?> |
Maak de Module class een extensie van een abstracte class met daarin functies die je extended class moet implementeren. Maak elke module class een unique naam, en instanieer deze. Dan hoef je alleen nog maar $modulenaam->index() te doen, zonder dat je via de getModuleByname() iets hoeft te doen.quote:Op vrijdag 27 maart 2009 14:18 schreef daReaper het volgende:
Ik zit wat te klooien met OO-programmeren, maar ik kom ergens niet helemaal uit.
Ik heb een site gemaakt, en aan die site wil ik modules kunnen toevoegen. Dit is enkel een directory met bestandjes, die je alleen maar aan de modules-directory hoeft toe te voegen, en het werkt al.
Nou heb ik een bestand modules.php met daarin de klasse Modules. Deze klasse kijkt in de modules directory om te zien welke modules er zijn.
[ code verwijderd ]
Zoals je daar ziet, wordt voor elke module weer een nieuw object aangemaakt van de klasse Module
[ code verwijderd ]
in deze module gaat het echter niet helemaal goed.
In die includes wordt ten eerste $this->linkname bepaald, wat geen probleem is. Er staat (staan) echter ook functies in, in elk geval de functie index($args). Hoe kan ik er nou voor zorgen dat deze functies gewoon onderdeel worden van het nieuw aangemaakte object? Beetje moeilijk uit te leggen allemaal, maar uiteindelijk wil ik in het hoofdscript het volgende stukje script gebruiken:
[ code verwijderd ]
Ik hoop dat het een beetje begrijpelijk is... Hoe kan ik dit oplossen?
Ik vrees dat ik het niet helemaal snap :@ Ben nog een beetje een beginner met OOP.quote:Op vrijdag 27 maart 2009 14:23 schreef Scorpie het volgende:
[..]
Maak de Module class een extensie van een abstracte class met daarin functies die je extended class moet implementeren. Maak elke module class een unique naam, en instanieer deze. Dan hoef je alleen nog maar $modulenaam->index() te doen, zonder dat je via de getModuleByname() iets hoeft te doen.
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 | class Modules implements IteratorAggregate { var $modules = array(); function __construct() { $dir = opendir("../modules"); while (false !== ($file = readdir($dir))) { if (is_dir("../modules/$file") && !preg_match("/\.\.?/", $file)) { if(file_exists("../modules/$file/$file.php")) require("../modules/$file/$file.php"); if(file_exists("../modules/$file/$file_admin.php")) require("../modules/$name/$name_admin.php"); $mod = new $file(); array_push($this->modules, $mod); } } } public function getIterator() { return new MyIterator($this->modules); } function getModuleByName($name) { foreach($this->modules as $module) { if ($module->name == $name) { return $module; } } } } $modules = new Modules(); ?> |
1 2 3 4 5 6 7 8 9 10 11 12 13 | class Module { var $templatedir; var $linkname; var $name; function __construct($name) { $this->templatedir = "../modules/".$td."/templates"; $this->name = $name; } } ?> |
1 2 3 4 5 6 7 8 9 | $this->linkname = "Agenda"; class agenda implements Module { function index($args) { [...] } } ?> |
Een interface is wat anders dan een abstrace class.quote:Op vrijdag 27 maart 2009 14:51 schreef daReaper het volgende:
[..]
Ik vrees dat ik het niet helemaal snapBen nog een beetje een beginner met OOP.
Die getModuleByName() wil ik eigenlijk wel houden. Ik heb zojuist ook een functie op php.net gevonden die ik in mijn Modules klasse kon stoppen, zodat ik een foreach() op de $modules kan gooien, waarbij $modules dan elke keer een nieuwe module returnt.
Ik snap alleen niet zo goed wat dat eerste is, wat je daar zegt. Mijn Modules klasse ziet er nu zo uit:
[ code verwijderd ]
de Module klasse ziet er zo uit:
[ code verwijderd ]
Agenda.php:
[ code verwijderd ]
Maar dit geeft een error: Fatal error: agenda cannot implement Module - it is not an interface in C:\severjanin\modules\agenda\agenda.php on line 4
Zoals ik al zei: ik ben nog een beetje een beginneling hierin. Wat houdt dat "interface" in?
Waarom zou je dat willen houden? Het is een dure operatie die eigenlijk onnodig is, aangezien je al de naam weet van de module die je wilt aanspreken. Dan heeft het geen zin om IEDERE keer weer die modules lijst op te halen en aan te spreken, roep dan direct de controller van de module zelf aan.quote:Op vrijdag 27 maart 2009 14:51 schreef daReaper het volgende:
[..]
Ik vrees dat ik het niet helemaal snapBen nog een beetje een beginner met OOP.
Die getModuleByName() wil ik eigenlijk wel houden. Ik heb zojuist ook een functie op php.net gevonden die ik in mijn Modules klasse kon stoppen, zodat ik een foreach() op de $modules kan gooien, waarbij $modules dan elke keer een nieuwe module returnt.
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 | interface ModFuncs { public function index($args); } abstract class Module implements ModFuncs { var $templatedir; var $linkname; var $name; function __construct() { $this->name = get_class($this); $this->templatedir = "../modules/".$this->name."/templates"; } } class Modules implements IteratorAggregate { var $modules = array(); function __construct() { $dir = opendir("../modules"); while (false !== ($file = readdir($dir))) { if (is_dir("../modules/$file") && !preg_match("/\.\.?/", $file)) { if(file_exists("../modules/$file/$file.php")) require("../modules/$file/$file.php"); if(file_exists("../modules/$file/$file_admin.php")) require("../modules/$name/$name_admin.php"); $mod = new $file(); array_push($this->modules, $mod); } } } public function getIterator() { return new MyIterator($this->modules); } function getModuleByName($name) { foreach($this->modules as $module) { if ($module->name == $name) { return $module; } } } } $modules = new Modules(); ?> |
1 2 3 4 5 6 7 8 9 10 | $this->linkname = "Agenda"; class agenda extends Module { function index($args) { [...] } } ?> |
Nu ik er over na denk is die functie ook niet meer van toepassing. $modules wordt aangemaakt en in het hoofdscript komt het volgende stukje script voorbij:quote:Op vrijdag 27 maart 2009 15:13 schreef Scorpie het volgende:
[..]
Waarom zou je dat willen houden? Het is een dure operatie die eigenlijk onnodig is, aangezien je al de naam weet van de module die je wilt aanspreken. Dan heeft het geen zin om IEDERE keer weer die modules lijst op te halen en aan te spreken, roep dan direct de controller van de module zelf aan.
De rest heeft Tiemie al verteld
quote:Op vrijdag 27 maart 2009 15:15 schreef daReaper het volgende:
[..]
Nu ik er over na denk is die functie ook niet meer van toepassing. $modules wordt aangemaakt en in het hoofdscript komt het volgende stukje script voorbij:
foreach($modules as $mod) {
array_push($menuitems, array($mod->name, $mod->linkname));
if ($page == $mod->name) {
$content = $mod->index($args);
}
}
Dat getModuleByName() heb ik bij nader inzien dus helemaal niet nodig.
Beeld->paginabron heb ik het over. Firebug heb ik niet eens geinstalleerd.quote:Op vrijdag 27 maart 2009 12:17 schreef Roy_T het volgende:
[..]
Firebug wel, maar Firefox "view source" niet.
Dan weet ik niet welke Firefox jij gebruikt, maar de mijne past echt niets aan de in de source vziwquote:Op vrijdag 27 maart 2009 16:43 schreef ralfie het volgende:
Beeld->paginabron heb ik het over. Firebug heb ik niet eens geinstalleerd.
Heb het effe zitten uitzoeken, maar het blijkt mijn overactieve 'view selection source' te zijn. Deze code is natuurlijk al min of meer geparsed...quote:Op vrijdag 27 maart 2009 17:37 schreef Roy_T het volgende:
[..]
Dan weet ik niet welke Firefox jij gebruikt, maar de mijne past echt niets aan de in de source vziw
Heb je een testcase?
1 2 3 4 5 6 7 8 9 10 11 12 | user SET usrUsername = 'leroyXXX', usrPassword = 'e10adc3949ba59abbe56e057f20f883e', usrGender = 'M', usrLastname = null, usrInitials = 'LHM', usrInsertion = null, usrEmail = 'info@blabla.com' WHERE usrId = 1 |
Ja ja, ik heb al Gegoogled. Ik vind echter maar één site waar het daadwerkelijk over dit probleem gaat, maar daar is geen antwoord op gegeven. De rest gaat allemaal over lui die problemen hebben met hun sytaxis het invoeren van een MySQL NULL waarde vanuit hun PHP code.quote:Op zondag 29 maart 2009 23:10 schreef GlowMouse het volgende:
http://www.google.nl/search?hl=nl&safe=off&q=+site:lists.evolt.org+mysql+update+null
1 |
En nu? Tijd voor Java voor dummies?quote:Op zondag 29 maart 2009 16:57 schreef cablegunmaster het volgende:
mn eerst werkende java Jar file
http://cablegunmaster.nl/test666.php
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 | <html> <head> <meta http-equiv="Generator" content="TigerII MiniPad (C)2001"> <title>Ticketservice</title> </head> <body> <style type="text/css"> <!-- .body { font-family: "Trebuchet MS"; font-size: 12px; } .style1 {color:#ffaa00;} .style2 {color:#dddddd; font-family: "Trebuchet MS";} --> </style> <form name="Ticketservice.html"> <table> <span class="style2"> <tr>Voornaam: <input type="text" name="voornaam"></tr> <tr>Tussenvoegsel: <input type="text" name="tussenvoegsel"></tr> <tr>Achternaam: <input type="text" name="achternaam"></tr> <tr>Geboortedatum: <input type="text" name="Geboortedatum"></tr> <tr>Email adres: <input type="text" name="emailadres"></tr> </table> </span> <br> <span class="style1"><I>Hoeveel kaarten wil je kopen?:</I><BR> <I>De standaard ticketprijs is ¤7.50</I><BR> Let op je moet minimaal 16 zijn om op deze feesten binnen te komen.</span> <br> <SELECT NAME="aantal"> <OPTION>1</option> <OPTION>2</OPTION> <OPTION>3</OPTION> <OPTION>4</OPTION> <OPTION>5</OPTION> <OPTION>6</OPTION> </SELECT> </span> </FORM> <hr> <form action="Bevestigen.html"> <input type="submit" value="Verder"> </form> </body> </html> ?> |
[Java] voor dummies - Deel 2.quote:Op dinsdag 31 maart 2009 11:07 schreef cablegunmaster het volgende:
[..]
opzich en dan alleen de beginselenwant verder kan ik ook niet helpen
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 | if (isset($_POST['voornaam'])){ if (empty($_POST['voornaam']) || empty($_POST['achternaam']) || empty($_POST['geboorteplaats']) || empty($_POST['emailadres'])) { header ('Location:###FOUTPAGINA###'); } else { header ('Location:bevestigen.html'); } ?> <html> <head> <meta http-equiv="Generator" content="TigerII MiniPad (C)2001"> <title>Ticketservice</title> </head> <style type="text/css"> .body {font-family:"Trebuchet MS";font-size:12px;} .style1 {color:#ffaa00;} .style2 {color:#dddddd;font-family:"Trebuchet MS";} </style> <body> <form name="Ticketservice" action="" method="post"> <table> <span class="style2"> <tr>Voornaam: <input type="text" name="voornaam"></tr> <tr>Tussenvoegsel: <input type="text" name="tussenvoegsel"></tr> <tr>Achternaam: <input type="text" name="achternaam"></tr> <tr>Geboortedatum: <input type="text" name="Geboortedatum"></tr> <tr>Email adres: <input type="text" name="emailadres"></tr> </table> </span> <br> <span class="style1"><I>Hoeveel kaarten wil je kopen?:</I><BR> <I>De standaard ticketprijs is ¤7.50</I><BR> Let op je moet minimaal 16 zijn om op deze feesten binnen te komen.</span> <br> <SELECT NAME="aantal"> <OPTION>1</option> <OPTION>2</OPTION> <OPTION>3</OPTION> <OPTION>4</OPTION> <OPTION>5</OPTION> <OPTION>6</OPTION> </SELECT> </span> <input type="submit" value="Verder"> </FORM> </body> </html> <?php } ?> |
Divs zijn handig, maar hier kun je wel iets beters gebruiken natuurlijk om je form te stylen (fieldsets, labels, etc).quote:Op dinsdag 31 maart 2009 16:58 schreef prodygee het volgende:
Niet getest. Maar ik zie hier geen fouten in. Gebruik iig divjes.. en leer je code beter schrijven. Good luck.
cutenewsquote:Op woensdag 1 april 2009 16:19 schreef Darkomen het volgende:
Gezocht:
Gratis CMS
- Calender
- User Magement/groups
- Makkelijk te schrijven plugins
Uitleg, ik moet voor een internet een cms voor documentatie opzetten.
De artikelen moeten zichtbaar zijn voor bepaalde groepen, andere niet.
Ook moet er een kalender in zitten waarbij je events kan toevoegen, sommige die terugkomen, sommige voor enkele dagen/uren.
Als dit voor mezelf zou zijn, zou ik zelf gaan schrijven, waardoor het dus enkele maanden tot een jaar zou duren
Maar aangezien dit gratis is ga ik dus niet die moeite doen en tevens moet het snel opgezet worden.
De huidige beheerder heeft een joomla cms opgezet, leuk maar onbruikbaar en voor bijna alle plugins zoals usergroups en een kalender moet je betalen.
Nu heb ik wel gezocht maar kom ik steeds bij betaalde cmsen of halfgare zonder de juiste opties.
PHP is voor mij een hobby, misschien dat jullie wat meer goede cmsen kennen
het heeft nu categorieenquote:Op woensdag 1 april 2009 16:37 schreef Darkomen het volgende:
Cutenews, damn dat is lang geleden!
Die heb ik vroeger ook nog op mn site gehad/aangepast!
maar dat is puur een news/blog systeem, geen cms met categorieen en artiekelen.
Zal mn post nog ff aanpassen.
Maak daar ff een nieuw topic voor. Anders staat dit topic zo vol met "je moet $cms nemen" posts.quote:
Waarom meen je dat er ook maar enig verband tussen die twee zaken zitquote:Op zaterdag 4 april 2009 16:26 schreef new_guy1 het volgende:
Zou het mogelijk zijn om met een bepaald query resultaat een audio file te openen...?
wat is er mis met een simpel if statement?quote:Op zaterdag 4 april 2009 17:42 schreef new_guy1 het volgende:
Ik heb een database in MySQL. Met PHP tel ik hoevaak iets voorkomt in die database. Zodra dit meer dan X keer is, wil ik eigenlijk dat er een geluidssignaal word gegeven...
1 2 3 4 5 6 7 8 9 10 11 12 | class Users { private $users = array(); public function __get($id) { if (is_numeric($id)) { if (!isset($this->users[$id])) $this->users[$id] = new User($id); return $this->users[$id]; } } } ?> |
1 2 3 4 | $users = new Users; $eenofandereuser = $users[1]; // levert de foutmelding op dat ik object van Users niet als array kan gebruiken ?> |
de __get is voor dingen als:quote:Op zondag 5 april 2009 21:24 schreef daReaper het volgende:
is er een manier om een object als een array te gaan gebruiken? Ik heb deze klasse:
[ code verwijderd ]
Nou hoopte ik het volgende stukje script te kunnen gebruiken, maar dat gaat dus mis:
[ code verwijderd ]
Hoe los ik dit mooi op?
1 2 3 | $eenofandereuser = $user->bestaatlekkerniet ?> |
1 2 3 4 5 6 7 8 | class User { public static function construct_from_id($id) { # error checking enzo return new User($id); } } ?> |
1 2 3 | $eenofandereuser = user::construct_from_id(1); ?> |
Waarom zou je een static functie gebruiken die (mi) geen toegevoegde waarde heeft? De constructor moet een id accepteren, dus kun je gewoon doen:quote:Op dinsdag 7 april 2009 00:00 schreef Thomass het volgende:
[..]
de __get is voor dingen als:
[ code verwijderd ]
Dus als je een niet bestaande member variable probeert te accessen roept ie __get aan
Wat je beter kan doen, mijns insziens is:
[ code verwijderd ]
en dan kan je doen
[ code verwijderd ]
Dit alles onder voorbehoud enzo, het is laat :s)
1 2 3 | $eenofandereuser = new User($id); ?> |
Je hebt een server nodig met PHP-ondersteuning. Die kun je gewoon op je eigen computer installeren, da's voldoende voor een testomgeving.quote:Op maandag 6 april 2009 23:52 schreef jeweetz17 het volgende:
weten jullie hoe ik een php script in een html bestand kan zetten.
Ik ben bezig met het maken van een site in html en een default.css opmaak.
ik heb nu een php script wat op de site wil weergeven.
alleen hoe doe ik dat. Ik gebruik dreamweaver cs 4. Ik kan dan namelijk gemakkelijk zien hoe het eruit komt te zien door bestand-preview in brouwser te gaan. helaas krijg ik tijdens het proberen ook de volgende melding: to preview pages containing server -side code, you need a testting server. would you like to specify one now. IK heb al geprobeert het php script in zijn geheel te kopieeren naar het html bestand en hem tussen de body te plaatsen en vervolgens het html bestand naar php te vernoemen maar zonder succes. iemand?
&eur; doet niets. Met een o erbij wordt het €quote:Op dinsdag 7 april 2009 15:01 schreef Catch22- het volgende:
is het trouwens niet &eur; ?
http://www.phpfreakz.nl/forum.php?forum=1&iid=902766&print=1
htmlentities()? Maar waarom zou je dat willen?quote:Op dinsdag 7 april 2009 14:29 schreef aardappel het volgende:
Heeft php een functie dat ik die tekens kan omzetten naar html codes?
1 |
1 2 3 | corresponds to your MySQL server version for the right syntax to use near 'LIKE '%%' ORDER BY id DESC' at line 1 |
hmm, de code is nu zo:quote:Op dinsdag 7 april 2009 23:33 schreef SuperRembo het volgende:
Het moet zijn "WHERE album LIKE '%foo%' OR name LIKE '%foo%'", je bent "name" vergeten.
whehehe mijn fout, ik deed 'name' ipv 'naam'quote:Op woensdag 8 april 2009 00:06 schreef SuperRembo het volgende:
Ja dan zal het "naam" moeten zijn ofzo. Je weet toch wel hoe die tabel er uit ziet
1 2 3 4 5 6 7 | $Tekst=" <div class=\"entry\"> Tekst. </div> "; ?> |
1 2 3 4 5 6 | define("_BBC_PAGE_NAME", "Test"); define("_BBCLONE_DIR", "bbclone/"); define("COUNTER", _BBCLONE_DIR."mark_page.php"); if (is_readable(COUNTER)) include_once(COUNTER); ?> |
Ik weet dus niet hoe ik die dubbele quotes moet aanpassen in de code van BBClone...quote:Parse error: syntax error, unexpected T_STRING in /var/www/vhosts/test.php on line 5
1 2 3 4 5 6 7 8 9 10 11 | $Tekst=" define("_BBC_PAGE_NAME", "Test"); define("_BBCLONE_DIR", "bbclone/"); define("COUNTER", _BBCLONE_DIR."mark_page.php"); if (is_readable(COUNTER)) include_once(COUNTER); <div class=\"entry\"> Tekst. </div> "; ?> |
1 2 3 4 5 6 7 8 9 10 11 | $Tekst="define('_BBC_PAGE_NAME', 'Test'); define('_BBCLONE_DIR', 'bbclone/'); define('COUNTER', _BBCLONE_DIR.'mark_page.php'); if (is_readable(COUNTER)) include_once(COUNTER); <div class=\'entry\'> Tekst. </div> "; ?php ?> |
Dank je wel, maar single quotes had ik al geprobeerd.quote:Op woensdag 8 april 2009 07:44 schreef GI het volgende:
[ code verwijderd ]
Zou moeten werken
Met " geef je aan dat je een stukje string wil definieren. Als je daarna die " ook in de string stopt denkt de compiler dat je klaar bent met je stukje string.
Ik wil met BBClone statistieken bijhouden.quote:Op woensdag 8 april 2009 08:30 schreef GI het volgende:
Ik had het begin van je post niet goed gelezen.
Zonder je op deze oplossing te richten vertel eens wat je precies wil doen ?
1 2 3 | define("_BBC_PAGE_NAME", $_GET["pagina"].$_GET["taal"); ?> |
quote:Op woensdag 8 april 2009 09:12 schreef GI het volgende:
Is het dan niet makkelijker de include gewoon in de index.php te houden en
[ code verwijderd ]
te gebruiken ?
of gewoon de variabale van de switch te gebruiken om de page_name van BBC te gebruiken.
1 2 3 4 5 6 7 | define("_BBC_PAGE_NAME", $_GET["taal"].": ".$_GET["pagina"]); define("_BBCLONE_DIR", "bbclone/"); define("COUNTER", _BBCLONE_DIR."mark_page.php"); if (is_readable(COUNTER)) include_once(COUNTER); ?> |
Ik zal kijken hoe sessies precies werken. Dank je voor de suggestie.quote:Op woensdag 8 april 2009 09:22 schreef Catch22- het volgende:
taal kan je beter in de sessie zetten trouwensdie wordt 1x geselecteert meestal en je kan hem dan uit de sessie halen + je kan niet vergeten hem mee te geven
Graag gedaanquote:Op woensdag 8 april 2009 09:27 schreef Shiringa het volgende:
Nu ik dit gebruik, hoef ik het niet meer in elke pagina te plaatsen. Hartstikke bedankt, GI.
Waardoor iemand die op de site komt via een bookmark, zoekmachine, etc altijd de default taal te zien krijgt. Dat is precies waarom de taal imo wel in de URL zou moeten zitten (ik gebruik altijd example.com/<taal>/.....).quote:Op woensdag 8 april 2009 09:22 schreef Catch22- het volgende:
taal kan je beter in de sessie zetten trouwensdie wordt 1x geselecteert meestal en je kan hem dan uit de sessie halen + je kan niet vergeten hem mee te geven
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 | $naar = "email@email.nll"; $email = $_POST['email']; if(isset($_POST['verzend'])) { if($_POST['naam'] == '') { echo "U heeft geen naam ingevuld!<br />"; echo "<a href='javascript:history.back();' style='color: black; text-decoration:none;'>Klik hier om terug te gaan!</a>"; } elseif($_POST['email'] == '') { echo "U heeft geen e-mail adress ingevuld!<br />"; echo "<a href='javascript:history.back();' style='color: black; text-decoration:none;'>Klik hier om terug te gaan!</a>"; } elseif($_POST['bericht'] == '') { echo "U heeft geen bericht ingevuld!<br />"; echo "<a href='javascript:history.back();' style='color: black; text-decoration:none;'>Klik hier om terug te gaan!</a>"; } elseif($_POST['onderwerp'] == '') { echo "U heeft geen onderwerp ingevuld!<br />"; echo "<a href='javascript:history.back();' style='color: black; text-decoration:none;'>Klik hier om terug te gaan!</a>"; } else { if(!eregi("^[_a-z0-9-]+(.[_a-z0-9-]+)*@[a-z0-9-]+(.[a-z0-9-]+)*(.[a-z]{2,4})$", $_POST["email"])) { echo "U heeft geen geldig e-mail adress ingevuld!<br />"; echo "<a href='javascript:history.back();' style='color: black; text-decoration:none;'>Klik hier om terug te gaan!</a>"; } else { $bericht = " <html> <head> <title>Contact</title> </head> <body> Beste ".$_POST['naam']."<br>U heeft vandaag het volgende bericht Gestuurd. <br> <br> <hr width='100%'> <table border='0' width='100%'> <tr> <td width='20%'>Het onderwerp:</td> <td>".$_POST['onderwerp']."</td> </tr> <tr> <td width='20%'>Het Bericht:</td> <td>".$_POST['bericht']."</td> </tr> </table> <hr width='100%'> </body> </html> "; $headers = "MIME-Version: 1.0\r\n"; $headers.= "Content-type: text/html; charset=iso-8859-1\r\n"; $headers.= "From: ".$_POST['naam']." <".$_POST['email'].">\r\n"; if(mail($naar, $_POST['onderwerp'],$bericht,$headers)) { echo 'Uw Bericht is naar de naar de webmaster verstuurd!<br>'; } else { echo 'Uw bericht is helaas niet verstuurd.'; } $ond = "Uw bericht"; if (mail($email,$ond,$bericht,$headers)) { echo 'We hebben een e-mail naar u terug gestuurd!'; } else // Anders { echo 'Er is helaas niks naar u gestuurd.'; } } } } else { <!-- Formulier weergeven --> <table border='0' width='100%'> <form method='post'> <tr> <td width='33%'>Naam:</td> <td width="67%"><input type='text' name='naam' /></td> </tr> <tr> <td width='33%'>E-mail adress:</td> <td><input type='text' name='email' /></td> </tr> <tr> <td width='33%'>Het onderwerp:</td> <td><input type='text' name='onderwerp' /></td> </tr> <tr> <td width='33%'>Het Bericht:</td> <td><textarea name='bericht' cols="40" rows="5"></textarea></td> </tr> <tr> <td colspan='2' align='center'><input type='submit' value='Verzend' name='verzend' /></td> </tr> </form> </table> } ?> |
1 |
1 |
1 2 3 4 5 6 7 8 9 10 | +----+----------+ | id | title | +----+----------+ | 5 | Inloggen | | 48 | Forum | | 49 | Agenda | | 51 | Home | | 52 | Foto's | +----+----------+ |
1 2 3 4 5 6 7 8 9 10 | +----+----------+ | id | title | +----+----------+ | 1 | Inloggen | | 2 | Forum | | 3 | Agenda | | 4 | Home | | 5 | Foto's | +----+----------+ |
Omdat die menu items dynamisch toegevoegd en verwijderd kunnen worden. Op een gegeven moment wordt het dan zo'n zooitje... Maar heel erg is het denk ik ook nietquote:Op donderdag 9 april 2009 16:09 schreef Roy_T het volgende:
Waarom zou je dat willen
En ja, je kan er natuurlijk iets voor scripten.
1 2 3 4 5 6 7 8 9 10 11 | if($moveid = $_POST['moveup']) { $query = "SELECT MAX(id) FROM menu WHERE id < $moveid"; } else if($moveid = $_POST['movedown']) { $query = "SELECT MIN(id) FROM menu WHERE id > $moveid"; } if ($query) { $res = mysql_query($query); list ($newid) = mysql_fetch_array($res); mysql_query("UPDATE menu SET id=-1 WHERE id=$newid"); mysql_query("UPDATE menu SET id=$newid WHERE id=$moveid"); mysql_query("UPDATE menu SET id=$moveid WHERE id=-1"); } ?> |
Het is helemaal niet erg zelfsquote:Op donderdag 9 april 2009 16:24 schreef daReaper het volgende:
Omdat die menu items dynamisch toegevoegd en verwijderd kunnen worden. Op een gegeven moment wordt het dan zo'n zooitje... Maar heel erg is het denk ik ook niet![]()
Je kunt ook een extra veld toevoegen, puur voor de sortering. En die hoeft dan ook niet uniek te zijn. (Iig niet uniek volgens de database, je kunt het in php wel regelen natuurlijk.)quote:Op donderdag 9 april 2009 16:24 schreef daReaper het volgende:
[..]
Omdat die menu items dynamisch toegevoegd en verwijderd kunnen worden. Op een gegeven moment wordt het dan zo'n zooitje... Maar heel erg is het denk ik ook niet
[ code verwijderd ]
Daarbij moet dus gezegd worden dat het menu wordt gesorteerd op id
Heel slecht ideequote:Op donderdag 9 april 2009 16:24 schreef daReaper het volgende:
Daarbij moet dus gezegd worden dat het menu wordt gesorteerd op id
Dank je welquote:Op donderdag 9 april 2009 01:07 schreef Catch22- het volgende:
.htaccess aanmaken in je site root en dan een rewriteurl aanmaken
is niet zo gek moeilijk
http://httpd.apache.org/docs/1.3/mod/mod_rewrite.html
http://phphulp.nl/php/tutorials/8/146/
RewriteRule ^php/tutorials/(.*)/(.*)/ php/tutorials.php?cat=$1&id=$2
dus
RewriteRule ^/(.*)/(.*) index.php?taal=$1&pagina=$2
ofzo, ff googlen en dan kom je er wel uit.
voor je vindbaarheid kan het goed zijn om zon soort layout te maken
site.tld/paginas/en/2/paginatitel.html
Je moet in het script sowieso de invoerwaarden controleren, ook de taal. Iemand kan immers ook direct de link naar index.php?lang=de aanroepen.quote:Op vrijdag 10 april 2009 09:42 schreef Roy_T het volgende:
Je gaat er alleen even aan voorbij dat je niet-bestaande talen dan af moet vangen in je script (dus alsnog hardcoden of dynamisch, maar dan niet in 1 regel), terwijl dat nu met 1 regel in de htaccess kan.
In deze opzet wel jaquote:Op vrijdag 10 april 2009 09:47 schreef Light het volgende:
Je moet in het script sowieso de invoerwaarden controleren, ook de taal. Iemand kan immers ook direct de link naar index.php?lang=de aanroepen.
Dat heb ik al geprobeerd, maar als ik dat doe, werkt site.ext/css/style.css of site.ext/img/bg.jpg bijvoorbeeld niet meer. of /js ofzo. Daarom de talen helemaal vooraan geplaatst, zodat site.ext/xxx/ wel werkt.quote:Op vrijdag 10 april 2009 08:50 schreef Catch22- het volgende:
je kan dat misschien beter dynamisch doen, mocht je ooit een taal toevoegen...
1 2 3 4 5 6 | $variable = " Tekstteksteskteskt include("pagina.php") "; ?> |
Wat je kunt doen, is het bestand dat je gaat includen iets laten teruggegeven met return;quote:Op zaterdag 11 april 2009 03:51 schreef Shiringa het volgende:
Hoe kan ik een include in een variable stoppen?
Dus ik wil bijvoorbeeld include("pagina.php"); in $variable stoppen.
Dit werkt niet:
[ code verwijderd ]
Ik heb ook met echo en backslash/escape etc. geprobeerd, maar geen resultaat.
1 2 3 4 | $var = 'abc'; return $var; ?> |
1 2 3 | echo include(includeme.php); ?> |
Waarom zou je dat willen?quote:Op zaterdag 11 april 2009 03:51 schreef Shiringa het volgende:
Hoe kan ik een include in een variable stoppen?
Dus ik wil bijvoorbeeld include("pagina.php"); in $variable stoppen.
Dit werkt niet:
[ code verwijderd ]
Ik heb ook met echo en backslash/escape etc. geprobeerd, maar geen resultaat.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | //If is defined URL variable 'aboutme' if(isset($_GET['aboutme'])){ // include page about me include('include/in-aboutme.php'); //else if is defined URL variable 'interests' }else if(isset($_GET['interests'])){ // include page interests include('include/in-interest.php'); // in all other cases include the home page } else { include('include/in-home.php'); } ?> |
Ik denk dat je van wereld beter een singleton kunt maken.. anders creeer je steeds een parallelle wereldquote:Op vrijdag 10 april 2009 16:29 schreef Catch22- het volgende:
($worldVariable->OutsideTemp > 20) ? this->DrinkBier("Terras");
Laat je nou het terras bier consumeren? Da's verspilling, je kunt het beter zelf opdrinken.quote:Op zaterdag 11 april 2009 20:39 schreef Intrepidity het volgende:
[..]
Ik denk dat je van wereld beter een singleton kunt maken.. anders creeer je steeds een parallelle wereld
if(World::getInstance()->outsideTemp > 20) { $this->terras->consume(new Bier("Amstel")); }
Cheers
Maar terras is geen functie, er staat geen () achter.quote:Op zondag 12 april 2009 09:58 schreef slacker_nl het volgende:
denk dat $this van het object Intrpidey is en dat hij zijn terras functie aanroept waarbij ie consume implementeerd.. (ik neem aan dat bij dat terras zomersgeklede hoogwaardige dames zitten, anders kan ie net zo goed gewoon consumeren)
1 2 3 4 5 | BBB: <input type="text" name="bbb" /> CCC:: <input type="text" name="ccc" /> DDD:: <input type="text" name="ddd" /> <input type="submit" /> |
1 2 3 4 5 6 7 8 9 | $ccc = $_REQUEST['ccc']; $bbb = $_REQUEST['bbb']; echo " - " . $ccc . " - " . $bbb . " - \n<br><br>\n"; echo "<img src='url" . $ccc."/url/" . $bbb. "/" . $j . ".jpg' />\n<br><br>\n"; ?> |
Maar wat zal de else constructie bevatten?quote:Op zaterdag 11 april 2009 20:39 schreef Intrepidity het volgende:
[..]
Ik denk dat je van wereld beter een singleton kunt maken.. anders creeer je steeds een parallelle wereld
if(World::getInstance()->outsideTemp > 20) { $this->terras->consume(new Bier("Amstel")); }
Cheers
Iets met open(new Topic()), denk ikquote:Op zondag 12 april 2009 13:17 schreef Scorpie het volgende:
[..]
Maar wat zal de else constructie bevatten?
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |