Kevin ponsen op 27/11/2010 12:12:19
karl karl
niet iedereen is blijkbaar zo goed in php als jij maar wil niet zeggen dat de scripts
crap zijn
Klopt bijna, niet iedereen is zo goed als mij, maar toch kunnen
sommige mensen goede scripts schrijven. Maar toch, die scripts die je hier hebt geplaatst zijn niet goed. De eerste (die je zelf hebt geschreven) was nog wel oké, maar die tweede. Die is er slecht aan toe.
Kevin ponsen op 27/11/2010 12:12:19
als het voor die gene werkt wat hij zelf heeft gemaakt of gebruikt
zie ik geen probleem
ondanks dat het met een pleister aan elkaar plakt
het werkt zoals die gene dat nodig heeft
Kijk, dat is dus een nadeel van php, het geeft soms geen duidelijke errors maar fixt intern dingen voor je. Daardoor lijkt het te werken, maar doet dat het in feite niet. Ook is het zo dat php niet voor jou kijkt of het allemaal veilig e.d. is wat je doet. Dat kan php geen ene bal schelen. Jij denkt dat het werkt zoals jij wilt dat het werkt, maar dat is met deze code totaal niet te garanderen. Er kunnen met deze code allerlei nare bijwerkingen ontstaan.
Je wilt toch dat als een formulier gepost is, dat die dan gecontroleerd wordt? Dat kan jij niet garanderen. En als er wat in de database gestopt wordt, dan wil je toch dat het eruit komt zoals je het erin hebt gestopt? Dat kan jij ook niet garanderen. En weet je wat het aller mooiste is? Op php.net zeggen ze zelfs zelf ook dat je bepaalde functies niet moet gebruiken.
Je eerste stukje code was op zich ook niet veel mis mee, daar heb je toch maar een paar opmerkingen over gehad? En die zijn ook nog redelijk simpel.
Kevin ponsen op 27/11/2010 12:12:19
tuurlijk iemand die goed php kent zou het nooit gebruiken
maar voor mensen die net beginnen met php of niet eens begonnen zijn maar gewoon uit scripts dingen probeer toetevoegen door te proberen
zal het geen 100% waterdicht foutloos script zijn
Besef je wat je hier schrijft? Stel dat we het over auto's zouden hebben. Dan zou jij eigenlijk schrijven dat een beginnende automobilist, of iemand die niet veel verstand van auto's heeft geen beschermende middelen nodig heeft. Dat lijkt mij niet geheel correct. Dat zelfde geldt over wat je zegt over je script. Beginners, of mensen zonder kennis van php, moeten juist extra beschermd worden.
De meeste vragen hier op phphulp komen doordat mensen de maatregelen die hier in dit topic opgenoemd zijn niet hebben en dat er dan rare situaties ontstaan of dat er dan dingen gebeurd zijn die niet fijn zijn. Met een paar simpele aanpassingen kan dat verholpen worden.
Jammer genoeg hebben mensen dat ook nog niet genoeg door, en daar is veel
frustratie over.
Kevin ponsen op 27/11/2010 12:12:19
maar het werkt voor hem / mij of iemand anders
dus maak er dan niet zo'n FOUTMELDING!!
gebruiken als mensen een vraag hebben geef je daar gewoon antwoord op met hoe jij denk dat het moet zonder gelijk te beginnen met ah is crap ga lekker php leren of zo
Dat het werkt betekend niet dat het goed is of dat het goed werkt. Dat is dus ook een valkuil.
Verder zie ik ook niet in waarom jij je druk maakt over dat ik Dalando nog eens extra wijs op foutafhandeling. Dalando heeft al vele topics geopend, met dezelfde problemen als jou. Hij is daar vaak mee geholpen, maar jammer genoeg denkt hij nu dat hij het allemaal weet en dat hij andere kan helpen.
Dat is dus niet het geval. Zo heeft hij bijvoorbeeld laatst een script in de
script lib. gedumpt, maar dat script rammelde aan alle kanten. Daarom is dat script dus ook verwijderd. Hij heeft gewoon zelf hulp nodig, en dus moet hij zijn foutieve kennis niet proberen over te dragen op anderen.
Kevin ponsen op 27/11/2010 12:12:19
als je zulke antwoorden krijg denken die mensen ook van ik ben hier om hulp te vragen en wordt alleen maar afgezeiken wordt over dat ik het niet snap of kan en dat ik eerst maar is ga leren er voor :S
Op zich valt het wel mee met het afzeikgehalte. De fouten die jij maakt komen zo ontiegelijk vaak voor. Zelfs op php.net zeggen ze dat je bepaalde functies niet moet gebruiken. Zoals je zegt is het hier een hulp forum, dat betekend dus dat je al enige kennis moet hebben. Die kennis kan je hier ook weer vinden in de vorm van beginnershandleidingen (wat een hulp hé). Als je die handleiding snapt, en kent, dan kan je gewoon simpele dingen goed doen. Dan hoef je dus ook geen vragen te stellen.
En sowieso is dat eigenlijk wel met alles zo hé, dat je eerst moet leren voordat je iets kunt.
Gnotrgnotr gnotrgnotr op 27/11/2010 13:06:17
[quote="Kevin ponsen op 27/11/2010 12:12:19"]
(...)
mee-eens
[/quote]
Wouter J op 27/11/2010 13:27:42
[quote=Kevin ponsen]tuurlijk iemand die goed php kent zou het nooit gebruiken
maar voor mensen die net beginnen met php of niet eens begonnen zijn maar gewoon uit scripts dingen probeer toetevoegen door te proberen
zal het geen 100% waterdicht foutloos script zijn
Dus omdat iemand nog minder ervaren is in php moeten wij dat maar laten?
Als iemand begint met PHP moet je hem meteen het goede aanleren. En je zegt: "Het werkt toch daar gaat het om?" Dat is een foute redenatie. Het script werkt, maar dat komt voornamelijk omdat PHP in moet grijpen. Dat moet eigenlijk niet gebeuren dat is alleen in noodgevallen. En wat als er nu eens per ongeluk bij iemand iets mis gaat? Dan moet die persoon een keurige foutmelding krijgen.[/quote]
Kijk dat bedoel ik dus. Moet je maar eens in een echte taal zoals Java, C# of gewoon C fouten proberen te maken. Die laten dat echt niet toe.
Wouter J op 27/11/2010 13:27:42
Daarnaast vind ik deze discussie ook wel zinloos, met iemand waarvan je weet dat die geen discussie kan voeren moet je ook geen discussie beginnen....
Zou je misschien ook kunnen plaatsen wie dat dan is? Nu kan er van alles ingevuld worden....
Wouter J op 27/11/2010 13:27:42
Om jou goede scripting aan te leren hier even een basis template van iets ophalen uit een database. Dan kan je het zelf jou gegevens inzetten:
<?php
//True is foutmeldingen van het systeem weergeven, false is niet
define('DEBUG_MODE', true);
//Verbinding maken met mysql
$mysql = mysql_connect('localhost', 'gebruikersnaam', 'wachtwoord');
if(!$mysql) { //Als de verbinding niet is gelukt
echo "Er kan geen verbinding worden gemaakt.";
if(DEBUG_MODE) {
echo "<br />".mysql_error($mysql);
}
}
else { //Als er wel verbinding is
$db = mysql_select_db('databasenaam', $mysql);
if(!$db) { //Als de database selecteren niet is gelukt.
echo "Er kan geen database worden geselecteerd";
if(DEBUG_MODE) {
echo "<br />".mysql_error($db):
}
}
else { //Als er wel een database is geselecteerd
$query = "SELECT rij1, rij2, rij3
FROM tabelnaam
WHERE iets = 'iets'";
$result = mysql_query($query, $mysql);
if(!$query) { //Als de query niet is gelukt
echo "Er kan niks worden opgehaald.";
if(DEBUG_MODE) {
echo "<br />".mysql_error($query)."<br />".$query;
}
}
else { //Als de query wel is gelukt
while($row = mysql_fetch_assoc($result)) {
echo $row['rij1'];
}
}
}
}
?>
Tja. Ook afgekeurd. Zie if op regel 31.
Alledrie leer die beginnershandleiding eens...