Ach, laten we eerlijk wezen, een leuk koppie spoort wel aan tot hulp jaquote:Op dinsdag 23 februari 2010 21:01 schreef ursel het volgende:
[..]
Nu snap ik waarom ze zo snel hulp kreeg..
Wou je zeggen dat mijn koppie averechts werkt..quote:Op dinsdag 23 februari 2010 21:03 schreef Intrepidity het volgende:
[..]
Ach, laten we eerlijk wezen, een leuk koppie spoort wel aan tot hulp ja
Ik krijg niet bepaald een harde L van Ursel de Geer, nee.quote:Op dinsdag 23 februari 2010 21:11 schreef ursel het volgende:
[..]
Wou je zeggen dat mijn koppie averechts werkt..
Dat komt omdat ze in de eerste 3 hoofdstukken waarschijnlijk belangrijke basisconcepten uitleggen. Ik kan me heel goed voorstellen dat je dat wilt overslaan, maar geloof me, die informatie is echt nuttig.quote:Op dinsdag 23 februari 2010 21:16 schreef 555Martijn het volgende:
Is dat PHP voor dummies boek eigenlijk goed? Of heeft iemand anders een goed beginners boek?
Kheb hier al een PHP boek liggen maar die is dikker dan mijn LOTR trilogy. En dat leest gewoon niet lekker, voordat je "hello world" ziet ben je 3 hoofdstukken verder...
1 2 3 4 | $oPhpVoorDummiesTVP = new FokForumTVP(1415771); $oPhpVoorDummiesTVP->plaats(254493); ?> |
Ik ben een camelCaser, en maak functies van een class meestal zo:quote:Op dinsdag 23 februari 2010 21:51 schreef Sitethief het volgende:
Wat voor een regels hebben jullie eigenlijk jezelf gesteld voor de programmeerstijl die jullie hanteren, bijvoorbeeld de namen van variables, classes, functions etc? Denk dan aan underscores, camelcasing, maar ook de plek van een } en namen van tabellen in de database.
Vind ik namelijk wel een interessant onderwerp.
1 2 3 4 5 6 7 | $oObject = new Class(); $iCount = $oObject->getCount(); $oObject->setCount(++$iCount); /* andere manier voor het bovenstaande */ $oObject->incrementCount(); ?> |
1 2 3 4 5 6 7 8 | $iCount = 0; $aProducts = array(); $oUser = new FokUser($iID); /* ik gebruik single quotes voor strings */ $sError = 'Geen wachtwoord ingevuld!'; $bHasAccess = false; ?> |
1 2 3 4 5 6 7 8 | /* schrijf defines met hoofdletters */ if(TRUE) { /* doe iets... */ } else { /* doe iets anders... */ } ?> |
1 2 3 4 5 6 7 | /* Single-line comment */ /** * Multi-line * comment */ ?> |
1 2 3 4 5 | topics ranks forums etc... |
1 2 3 4 | user_name user_email etc... |
Dit is al tamelijk vaak behandeld, het is gewoon de smaak die jezelf hanteert... maar upperCammel wordt wel vaak gebruikt, ik werk er zelf ook mee. zowel voor variabelen, functies en classes. voor tabellen (linken) gebruik ik zelf vaak treeID om een link veld aan te geven.quote:Op dinsdag 23 februari 2010 21:51 schreef Sitethief het volgende:
Wat voor een regels hebben jullie eigenlijk jezelf gesteld voor de programmeerstijl die jullie hanteren, bijvoorbeeld de namen van variables, classes, functions etc? Denk dan aan underscores, camelcasing, maar ook de plek van een } en namen van tabellen in de database.
Vind ik namelijk wel een interessant onderwerp.
Ja daar heb je ook wel weer gelijk in, maar het gehele boek leest niet prettig. Kben wel een aantal programmeer boeken gelezen (C++) en merk toch echt wel dat sommige schrijvers het gewoon véél te moeilijk brengen. Wat ik hier heb liggen is ook meer een naslag werk dan een beginners-book.quote:Op dinsdag 23 februari 2010 21:18 schreef Intrepidity het volgende:
[..]
Dat komt omdat ze in de eerste 3 hoofdstukken waarschijnlijk belangrijke basisconcepten uitleggen. Ik kan me heel goed voorstellen dat je dat wilt overslaan, maar geloof me, die informatie is echt nuttig.
Een programmeertaal (goed!) leren gebruiken is nou eenmaal niet iets wat je met een korte tutorial leert.
Namen met camelCasing, bij classes is de eerste letter ook een hoofdletter, bij functies en variabelen niet. De { staat op dezelfde regel als het woord waar hij bij hoort en de } staat op dezelfde tabstop. Eenlettervariabelen zijn counters en/of hebben een beperkte scope (hooguit een paar regels).quote:Op dinsdag 23 februari 2010 21:51 schreef Sitethief het volgende:
Wat voor een regels hebben jullie eigenlijk jezelf gesteld voor de programmeerstijl die jullie hanteren, bijvoorbeeld de namen van variables, classes, functions etc? Denk dan aan underscores, camelcasing, maar ook de plek van een } en namen van tabellen in de database.
Vind ik namelijk wel een interessant onderwerp.
http://www.amazon.com/C-Beginning-2nd-J-Skansholm/dp/0201721686quote:Op dinsdag 23 februari 2010 23:39 schreef Crutch het volgende:
[off topic]
Wat is eigenlijk een goed beginnersboek voor C++? Ik ben er namelijk wel erg nieuwsgierig naar.
[/offtopic]
Maar wel een goede basis neem ik aan? Of kan ik het er maar beter meteen bijleren?quote:Op dinsdag 23 februari 2010 23:42 schreef Intrepidity het volgende:
[..]
http://www.amazon.com/C-Beginning-2nd-J-Skansholm/dp/0201721686
Dat vind ik zelf wel een aanraderHoewel iets verouderd, want het legt bijvoorbeeld niet uit hoe de WIN32 API en dergelijke werken.
Nee het is een prima basisquote:Op dinsdag 23 februari 2010 23:44 schreef Crutch het volgende:
[..]
Maar wel een goede basis neem ik aan? Of kan ik het er maar beter meteen bijleren?
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 | <tr> <td><strong>Contact Form </strong></td> </tr> </table> <table width="400" border="0" align="center" cellpadding="0" cellspacing="1"> <tr> <td><form name="form1" method="post" action="send_contact.php"> <table width="100%" border="0" cellspacing="1" cellpadding="3"> <tr> <td width="16%">Subject</td> <td width="2%">:</td> <td width="82%"><input name="subject" type="text" id="subject" size="50"></td> </tr> <tr> <td>Detail</td> <td>:</td> <td><textarea name="detail" cols="50" rows="4" id="detail"></textarea></td> </tr> <tr> <td>Name</td> <td>:</td> <td><input name="name" type="text" id="name" size="50"></td> </tr> <tr> <td>Email</td> <td>:</td> <td><input name="customer_mail" type="text" id="customer_mail" size="50"></td> </tr> <tr> <td> </td> <td> </td> <td><input type="submit" name="Submit" value="Submit"> <input type="reset" name="Submit2" value="Reset"></td> </tr> </table> </form> </td> </tr> </table> |
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 | // Contact subject $subject ="$subject"; // Details $message="$detail"; // Mail of sender $mail_from="$customer_mail"; // From $header="from: $name <$mail_from>"; // Enter your email address $to ='mijnemail@gmail.com'; $send_contact=mail($to,$subject,$message,$header); // Check, if message sent to your email // display message "We've recived your information" if($send_contact){ echo "We've recived your contact information"; } else { echo "ERROR"; } ?> |
quote:Op woensdag 24 februari 2010 16:11 schreef Regenbui het volgende:
Mensen. Ik probeer eens simpel PHP mail form te maken maar er gaat wat mis:
Mijn code:
[ code verwijderd ]
Code van send_contact.php
[ code verwijderd ]
Email word verstuurd, maar ik krijg een leeg bericht met als titel: to me
Waar zit de fout? please help
1 2 3 4 5 6 | $message = $_POST['detail']; $subject = $_POST['subject'] $mail_from = htmlspecialchars($_POST['customer_mail']); $name = htmlspecialchars($_POST['name']); ?> |
1 2 3 4 5 6 7 8 9 | // Contact subject $subject ="$subject"; // Details $message="$detail"; // Mail of sender $mail_from="$customer_mail"; ?> |
quote:Op donderdag 25 februari 2010 10:15 schreef Chandler het volgende:
Is het ook niet handig om dan gelijk htmlspecialchars er overheen te gooien? (ook over de andere variablen)
Andere vraag.
Ik wil middels preg_match controleren of de tekst uit karakters bestaat met (0-9a-z?/.,><'":;|\}]{[+=_-)(!@#$%^&A*~`). Indien er andere karakters er in zitten een false te returnen... hoe krijg ik dat voor elkaar?
1 2 3 4 5 6 | if(!preg_match('[0-9a-zA-Z\?\/\.,><\'";:\|\\\[\]\{\}\+=_-\(\)\!@#$%^&]+/i', $str)) { /* string bestaat uit andere characters, geef bericht en exit() */ exit("Dagmagnie!"); } ?> |
1 2 3 | $string = preg_replace('/[\x00-\x1F\x80-\xFF]/', '', $string); ?> |
1 |
1 2 | values(2,@usr_id,'HomePage_Doc',1,2) |
quote:Op maandag 1 maart 2010 14:13 schreef DaFan het volgende:
Ik heb de volgende query:
[ code verwijderd ]
Deze returned ongeveer 50 rows.
Ik wil deze INSERT statement uitvoeren:
[ code verwijderd ]
Waar @usr_id alle waarden een keer aanneemt die in de SELECT query voorkomen.
Kan ik er doorheen loopen oid?
1 2 3 4 5 6 7 | (2,usr_id1,'HomePage_Doc',1,2), (2,usr_id2,'HomePage_Doc',1,2), (2,usr_id3,'HomePage_Doc',1,2), (2,usr_id4,'HomePage_Doc',1,2), etc (2,usr_id50,'HomePage_Doc',1,2) |
1 2 3 4 5 6 7 8 9 10 11 12 13 | declare cur cursor for select usr_id from humres open cur; FETCH NEXT from cur into @usr_id WHILE @@FETCH_STATUS = 0 BEGIN insert into BacoSettings (SettingType,SettingGroup,SettingName,ValueType,longvalue) values(2,@usr_id,'HomePage_Doc',1,2) End close cur deallocate cur |
Hier wordt dat bij gehouden in zijn sessie. Een sessionIdle erbij en daarop checkenquote:Op maandag 1 maart 2010 16:10 schreef genakt het volgende:
ik wil graag als een user heeft ingelogd en bijv 5 minuten niks doet dat hij dan automatisch uitlogd.
Iemand die weet hoet dat moet ?
ik ben helemaal niet in php en kan het niet zo even programerenquote:Op maandag 1 maart 2010 16:18 schreef ursel het volgende:
[..]
Hier wordt dat bij gehouden in zijn sessie. Een sessionIdle erbij en daarop checken
huh ? nou heb ik die acces file gevonden en heb het irin geplakt maar het werkt nietquote:
logout.phpquote:<html>
<head>
<title>MEDINFO</title>
</head>
<body BGCOLOR="Grey">
<br>
<br>
<br>
<h1><center>MEDINFO</center>
<br>
<br>
<br>
<br>
<center>
<form action="login_code.php" method="POST">
<table>
<tr><td>BSN: </td><td><input type="password" name="bsn" size="20" maxlenght"9"></td></tr>
<br>
<tr><td>Achternaam: </td><td><input type="text" name="gebruikersnaam" size="20" maxlenght"20"></td></tr>
<br>
<tr><td ALIGN="right"><input type="submit" value="Aanmelden"></td><td ALIGN="center"><input type="reset" value="Velden wissen"></td>
</tr>
</table>
</form>
</body>
</html>
overzicht.phpquote:<?php
session_start();
session_unset();
session_destroy();
?>
<html>
<head>
<title>MEDINFO</title>
</head>
<body bgcolor="Grey">
<center><h1>MEDINFO<h1></center>
<br><br>
<br>
<center>
<h3>
U bent nu uitgelogd.
<br><br>
<a href = "login.php">opnieuw inloggen</a><br><br>
</h3>
</hr>
</center>
</body>
db.phpquote:<?php
session_start();
require 'db.php';
?>
<html>
<head>
<title>Uitgifte medicijnen</title>
</head>
<body bgcolor="Grey">
<h1><center>MEDINFO</center>
<br></h1>
<?php
if (!($connection = @ mysql_connect($hostName, $username, $password)))
showerror();
if (!mysql_select_db($databaseName, $connection))
showerror();
$bsn = ($_SESSION["bsn"]);
$sql = "SELECT *
FROM patient
WHERE burgerservicenummer = $bsn";
$resultaat = mysql_query($sql);
$rij = mysql_fetch_array($resultaat);
echo "Patientnummer: " . $rij[0] . "<br>" ;
echo "Voorletters: " . $rij[2] . "<br>" ;
echo "Achternaam: " . $rij[3] . "<br>" ;
echo "Woonplaats: " . $rij[5] . "<br>" ;;
echo "Geboortedatum: " . $rij[6] . "<br><br><hr><br>" ;
$sql2 = "SELECT naam, toepassing, uitgiftedatum
FROM patient p, medicijn m, uitgifte u
WHERE burgerservicenummer = $bsn
AND u.patientnummer = p.patientnummer
AND u.code = m.code";
$resultaat2 = mysql_query($sql2);
echo "<center><table>";
echo "<tr><td><b>Naam</b></td>
<td><b>Toepassing<b></td>
<td><b>Datum van uitgifte</b></td>";
while($rij2 = mysql_fetch_array($resultaat2))
{
echo "<tr>";
echo "<td width='120'>" .$rij2["0"] . "</td>";
echo "<td width='240'>" .$rij2["1"] . "</td>";
echo "<td>" .$rij2["2"] . "</td>";
echo "</tr>";
}
echo "</table></center>";
?>
<center><h3><a href = "logout.php">uitloggen</a><br><br></h3></center>
<?php
quote:<?php
$hostName = "localhost";
$databaseName = "med-info";
$username = "student4";
$password = "student4";
function showerror()
{
die("Error " . mysql_errno() . " : " . mysql_error());
}
?>
1 |
Ik stop zelf alles in mijn templates wat nodig is om te transformeren van een generiek formaat naar html. In mijn model-view-controller opstelling zorg is dus dat mijn controller compleet generiek is. Met een andere template ervoor kun je daar dus direct xml, html of whatever mee genereren. Escapen van output, of andere dingen die specifiek nodig zijn voor HTML-templates vind ik okay om in die template te stoppen. Ook het parsen van een datum van timestamp naar leesbaar formaat valt daar dus onder, want wellicht wil je in een XML-bestand wel gewoon de timestamp gebruiken, etcetera.quote:Op donderdag 4 maart 2010 17:27 schreef ursel het volgende:
Even toch een vraag met betrekking tot Smarty.
Gezien de beta's ziet het er naar uit dat versie 3 op redelijk korte termijn klaar moet zijn.
Maar hoe staat men hier tegenover qua functionaliteit.
Normaliter wil je zo veel logica in je code houden. Echter Smarty kan redelijk tot zeer veel in mijn ogen waardoor de mengeling tussen logica en templating dreigt.
Hoe doet een ieder dat zelf?
Een "tabel" van data wil ik best nog wel uit een array in mijn template gebruik met de loop functie. Maar meer dan dat wil ik eigenlijk ook niet verder gaan. Mijn collega is echter van mening dat zelfs dat nog te ver gaat en vindt dat een template volledig statisch dient te zijn.
Zijn voorkeur gaat hierin meer naar template Power waarbij de tabel eigenlijk uit blocks bestaat en je vanuit je code blocks assigned en zodoende vult.
Mja, het gaat niet alleen om database veld namen. De functie mktime spuugt bijvoorbeeld ook een unix timestamp terug. Alleen een jaartal boven 2038 geeft niks terug, ook geen error ofzo.quote:Op vrijdag 5 maart 2010 16:55 schreef Intrepidity het volgende:
Datatype van het veld omgooien naar unsigned integer? Tenzij je data van voor 1970 hebt natuurlijk..
mktime geeft false terug als de datum ongeldig is. Wel een soort van error dus.quote:Op vrijdag 5 maart 2010 17:09 schreef ursel het volgende:
[..]
Mja, het gaat niet alleen om database veld namen. De functie mktime spuugt bijvoorbeeld ook een unix timestamp terug. Alleen een jaartal boven 2038 geeft niks terug, ook geen error ofzo.
Mijn mktime() werkt ook nog met het jaar 3038, ik zie het probleem eigenlijk niet. Denk niet dat het aan de php-versie ligt, heb hier 5.2.12.quote:Op vrijdag 5 maart 2010 17:14 schreef Tijn het volgende:
Mijn mktime() doet ook niks met datums (data?) na 2038
En dat terwijl ik toch een vrij recente PHP draai (5.2.3)
OS kan ook relevant wezen. Als je OS maar een signed 32-bits integer als time_t gebruikt ondersteunt PHP ook nog hoger.quote:Op vrijdag 5 maart 2010 19:17 schreef Light het volgende:
[..]
Mijn mktime() werkt ook nog met het jaar 3038, ik zie het probleem eigenlijk niet. Denk niet dat het aan de php-versie ligt, heb hier 5.2.12.
Overschakelen naar een 64-bit server met 64-bit besturingssysteem. Dan kun je vooruit tot het einde der tijden (als de jaartallen 15 cijfers krijgen, wordt het nog een keer spannend).quote:Op vrijdag 5 maart 2010 16:47 schreef ursel het volgende:
Zijn er eenvoudige oplossingen welke we hiervoor kunnen toepassen, zonder te ingrijpend in het gehele systeem te moeten zitten?
1 2 3 | var_dump(mktime(8, 34, 23, 6, 12, 798793108307363)); ?> |
Niet voor zover ik weet, maar voel je vrij er een te startenquote:Op zaterdag 6 maart 2010 11:51 schreef Crutch het volgende:
Jo, is er een centraal Java-topic hier op FOK!?
Done: [Java] voor dummies -deel 1quote:Op zaterdag 6 maart 2010 11:56 schreef Intrepidity het volgende:
[..]
Niet voor zover ik weet, maar voel je vrij er een te startenMet google vind ik wel genoeg java-vraagtopics, dus er zal vast animo voor wezen.
Of als je je MySQL fatsoenlijk ingesteld hebt (lees: sql-mode op o.a. Traditional), dan krijg je wel keihard een foutmelding terug. Zoals het hoort.quote:Op vrijdag 5 maart 2010 19:15 schreef Light het volgende:
[..]
mktime geeft false terug als de datum ongeldig is. Wel een soort van error dus.
1 2 3 | echo mb_strcut($row['news'],0,1000); ?> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | if(empty($_GET)){ $sql = "select * from cable_news where hidden = '0' ORDER BY news_id DESC LIMIT 0,3"; $result = $db->query($sql); while($row = mysql_fetch_array($result)) { echo "<h2><a href='index.php?blog=".$row['news_id']."'>".ucfirst($row['title'])."</a></h2>\n"; echo "<p class='ondertitel'>Published on: ".$row['date']."<br><a href='./index.php?blog=".$row['news_id']."#comments'>Comment:".$row['comment']." , Add your own comment!</a></p>\n"; echo mb_strcut($row['news'],0,1000); echo "...<a href='index.php?blog=".$row['news_id']."'>Lees verder</a>"; echo "<div class=\"ondertitel\">\n"; echo "<br/>"; echo "<b>Mood: </b>".ucfirst($row['emotion'])."<br/>\n"; echo "<b>Listening to: </b>".ucfirst($row['music'])."<br/>\n"; echo "</div>\n"; echo "<hr>\n"; } } ?> |
Excuses voor mijn vaagheid zat zelf ook nog te puzzelenquote:
1 2 3 | echo mb_strcut($row['news'],0,700); ?> |
Het convert ze naar < en >, zodat ze niet als HTML-tags geïnterpreteerd worden.quote:Op zaterdag 6 maart 2010 23:50 schreef Xcalibur het volgende:
Sinds wanneer stript htmlentities je tags?
Niet?quote:Op zaterdag 6 maart 2010 23:50 schreef Xcalibur het volgende:
Sinds wanneer stript htmlentities je tags?
Maar als weergave op je website staat dit heel erg lelijk. Dus om deze reden besloten het niet te doen.quote:Op zaterdag 6 maart 2010 23:55 schreef Trollface. het volgende:
[..]
Het convert ze naar < en >, zodat ze niet als HTML-tags geïnterpreteerd worden.
Juist, en jij denkt dat dat een realistische preview oplevert?quote:Op zaterdag 6 maart 2010 23:55 schreef Trollface. het volgende:
[..]
Het convert ze naar < en >, zodat ze niet als HTML-tags geïnterpreteerd worden.
1 2 3 4 5 6 7 8 9 10 11 12 13 | <head> <title> Hoi </title> </head> <body> <?php echo "Hallo dit is een test"; ?> </body> </html> |
Dat heb ik al geprobeerd en dat werkt niet.quote:Op zondag 7 maart 2010 12:21 schreef Intrepidity het volgende:
En je opent dat .php bestand direct vanaf die USB-stick zeker? PHP bestand moet je in de htdocs (oid) map van xammp zetten en dan http://localhost/bestand.php in je browser openen.
heb je gecontroleerd of de service draait?quote:Op zondag 7 maart 2010 12:23 schreef Gitaarmat het volgende:
[..]
Dat heb ik al geprobeerd en dat werkt niet.
conflict met een poort.quote:Op zondag 7 maart 2010 12:35 schreef Gitaarmat het volgende:
Wat heeft skype ermee te maken?
Dat heb ik btw niet eens.
Hoe is het niet 12?quote:Op zondag 7 maart 2010 13:11 schreef Gitaarmat het volgende:
Ik snap de functie van strlen niet echt.
<?php
echo strlen("Hello world!");
?>
The output of the code above will be:
12
Waarom 12?
Yep, die snap ik nu. Maar die andere niet.quote:Op zondag 7 maart 2010 13:16 schreef Tijn het volgende:
[..]
Hoe is het niet 12?
[ afbeelding ]
Er staan gewoon 12 karakters tussen je quotes. Dus het resultaat van de functie strlen() is 12. Logisch toch?
strpos() is een hele andere functie dan strlen() he. Je krijgt nu de plek terug waar "world" begint. Dat is op positie 6 (H is 0, e is 1, l is 2 etc... world begint dus op plaats 6).quote:Op zondag 7 maart 2010 13:15 schreef Gitaarmat het volgende:
Oke, en
<?php
echo strpos("Hello world!","world");
?>
The output of the code above will be 6
waarom want world is 5 letters
www.php.netquote:Op zondag 7 maart 2010 13:15 schreef Gitaarmat het volgende:
Oke, en
<?php
echo strpos("Hello world!","world");
?>
The output of the code above will be 6
waarom want world is 5 letters
Ah, dat had ik niet gezien. Bedankt. Snelle reacties hier zeg.quote:Op zondag 7 maart 2010 13:18 schreef Tijn het volgende:
[..]
strpos() is een hele andere functie dan strlen() he. Je krijgt nu de plek terug waar "world" begint. Dat is op positie 6 (H is 0, e is 1, l is 2 etc... world begint dus op plaats 6).
Niks mis meequote:Op zondag 7 maart 2010 13:23 schreef Gitaarmat het volgende:
Ach, ik ben gewoon eerst de tutorial op w3schools aan het doornemen.
Ja. Je maakt met HTML gewoon een webpagina met daarop een formulier waarop je waarden voor je berekening kan invullen, inclusief een knop om het formulier te versturen. Vervolgens stuur je dat formulier naar een PHP-script, die rekent iets uit en toont een HTML-pagina met het resultaat erop.quote:Op zondag 7 maart 2010 13:46 schreef Gitaarmat het volgende:
Maak een zeer eenvoudige rekenmachine die alleen maar twee getallen bij elkaar kan optellen als je op een submit knop klikt.
Moet je die knop dan met html maken?
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |