je zou in principe toch ook ergens buiten de functie de variabelen kunnen declareren? (nou is global idd wat makkelijker te gebruiken, maar even omdat ik niet zeker weet of dit in php ook zo werkt)quote:Op donderdag 18 november 2010 13:52 schreef PiRANiA het volgende:
function calc_loadtime($calc)
{
global $starttime;
global $endtime;
Daar mee beginnen.
Zo werkt dat in php niet, de variabele is binnen de functie dan niet beschikbaar.quote:Op zaterdag 20 november 2010 16:41 schreef minibeer het volgende:
[..]
je zou in principe toch ook ergens buiten de functie de variabelen kunnen declareren? (nou is global idd wat makkelijker te gebruiken, maar even omdat ik niet zeker weet of dit in php ook zo werkt)
1 2 3 4 5 6 7 | <?php $uitroepteken = '!'; function vartest() { return 'Hello world'. $uitroepreken; } vartest(); ?> |
Ja logisch toch, niet dezelfde scope, de ene is $uitroepteken binnen de global scope, de tweede is $uitroepteken binnen de scope van vartest().quote:Op zaterdag 20 november 2010 16:44 schreef PiRANiA het volgende:
[ code verwijderd ]
Geeft: PHP Notice: Undefined variable: uitroepreken in - on line 7
Nee, de tweede is $uitroeprekenquote:Op zaterdag 20 november 2010 16:57 schreef pickup52 het volgende:
[..]
Ja logisch toch, niet dezelfde scope, de ene is $uitroepteken binnen de global scope, de tweede is $uitroepteken binnen de scope van vartest().
Dat inderdaad ook, maar als hij wel goed gespeld was zou het alsnog niet werken.quote:Op zaterdag 20 november 2010 17:01 schreef GlowMouse het volgende:
[..]
Nee, de tweede is $uitroepreken
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 | <html> <head> <title>PHP Test</title> <?php @$tekst = $_POST["tekst"]; if (strlen($tekst) > 0) { $naam = $_POST["naam"]; $Handle = fopen("data.base", 'a'); fwrite($Handle, "<table><tr><td colspan=2>" . date("\o\p d\-m\-Y \o\m G\:i\:s") . " schreef <b>" . $naam . "</b>:</td></tr><tr>"); fwrite($Handle, '<td width="20"></td><td>' . str_replace("\n", "<br>", str_replace(" ", " ", htmlentities($tekst))) . "</td></tr></table><hr>"); fclose($Handle); echo "<meta HTTP-EQUIV='REFRESH' content='0; url=http://localhost/h.php'>"; } ?> </head> <body onLoad="javascript:tekstaan = 1; naamaan = 1;"> <?php $fl = filesize("data.base"); if ($fl > 0) { $Handle = fopen("data.base", 'r'); $alltekst = fread($Handle, $fl); fclose($Handle); echo $alltekst; } ?> <table borde=0> <tr> <td> <form name="zendform" action="h.php" method="post"> <table border=0> <tr> <td>Naam:</td> <td><input name="naam" type="text" size="30" maxlength="20" value="Anoniem" onFocus="javascript:if(naamaan == 1){ zendform.naam.value=''; naamaan = 0;}" onBlur="javascript:if (zendform.naam.value==''){zendform.naam.value='Anoniem'; naamaan = 1;}"></td> </tr> <tr> <td colspan=2><textarea name="tekst" style="width: 400px; height: 150px;" onFocus="javascript:if(tekstaan == 1){ zendform.tekst.value=''; tekstaan = 0;}" onBlur="javascript:if (zendform.tekst.value==''){zendform.tekst.value='Klik hier om tekst toe te voegen.'; tekstaan = 1;}">Klik hier om tekst toe te voegen.</textarea></td> </tr> </table> </form> </td> </tr> <tr> <td> <button onClick="javascript:if (tekstaan == 1) { document.zendform.tekst.value = ''; tekstaan = 0; } if (document.zendform.tekst.value == '') { alert('Er is geen tekst ingevoerd.'); zendform.tekst.value='Klik hier om tekst toe te voegen.'; tekstaan = 1; } else document.zendform.submit();">Plaats bericht</button> </td> </tr> </table> </body> </html> |
1 2 3 4 5 6 7 8 9 10 11 12 13 | <?php echo <<< EOF add new category <br /> <form action="/categorie/nieuw" method="POST"> Categorie: <input type="text" name="category" /><br /> <br /> <input type="submit" value="Opslaan" /> </form> EOF; var_dump($_POST); ?> |
Genoeg gratis scriptjes om uit te kiezen, MYSQL is soms niet eens nodig:quote:Op zondag 21 november 2010 12:46 schreef nightfall het volgende:
Misschien kan iemand mij hier een beetje op weg helpen: ik heb een website met een afgeschermt gedeelte waar ik ideen voor mijn band opzet, de rest van mijn bandje kan daar ook komen en het downloaden en beluisteren.
nou is het geval dat zij ook wel eens ideen opnemen en dat ook graag willen delen.
nu heb ik al gekeken naar de mogelijkheden, en bv een opendir zou tot de mogelijkheden behoren, maar zelf zie ik meer in een database waar iedereen bestanden kan toevoegen(beschrijving aangeven, wie het heeft geupload enz), downloaden en deleten(ja ik vertrouw ze). mijn hostingprovider(webreus) ondersteunt mysql zag ik, dus daar moet wel wat mee te doen zijn.
ik heb al lopen zoeken maar nog geen bruikbare voorbeelden gevonden, misschien iemand die me hier op weg kan helpen?
bvd
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 | [php]// Stap 2 - Haal afhangbord data from jiba en filter de huidige tabel eruit. Als er meer dan 10 banen zijn moet dat in meerdere keren $b=1; $tableheight = 600*ceil(($bmax-1)/10); // Bereken de hoogte van de shaded area in het geval >10 banen do { // Build url based on baannummers curl_setopt($ch, CURLOPT_URL, "http://www.jiba-afhangbord.nl/content/html/73.asp?vn=".$vn."&eb=".$b."&ab=".($b+9)); // now call jiba $output = curl_exec($ch); // String replace vars om interne urls werkend te krijgen $uri = $_SERVER['SCRIPT_NAME']; // debug in case we need to change stuff // echo $output; // De tabel begint ergens waar een div style staat met "position: relative" // en eindigt bij een <table width="636"> waar de url in staat voor het wisselen banen // Het kan zijn dat er verenigingen zijn waar minder dan 10 banen zijn en daar zit wellicht die url tabel niet in. // We gooien alle html ervoor en erna gewoon weg $output = strstr($output, '<div style="position: relative;">'); if ($b>1) { // remove the top section with legenda when we have the next set $output = '<tr>'.strstr($output, '<td align="center"'); } $pos = strpos($output, '<table width="636"'); // end of section. Vlak hiervoor staat een </table> tag die we ook nog weg willen if ($pos === false) { if ($b==1) echo "Kan baangegevens niet ophalen"; } else { $output = substr($output, 0, $pos-10); // haal ook nog net het </table> tag extra weg // aanpassen interne URL's naar images en vervolgschermen (indien >10 banen) $output = str_replace("/content/html/73.asp", $uri, $output); // dit is strikt genomen oude code. Is al weggehaald $output = str_replace("/content/images/","",$output); // alle images staan nu op zelfde directory $output = str_replace("Kunstgras","Gras",$output); // Tekst is eigenlijk te lang voor linker kolom $output = str_replace("height:600px;","height:".$tableheight."px;",$output); // Absolute <div> tag met grijs shaded area $output = str_replace("color:#4B793E;","color:#6DA7FF;",$output); // Wijzig onleesbare kleur groen van reserveringen in blauw echo $output; } $b+=10; // next set } while ($b<$bmax); echo "</table></div>"; // en die moeten er nog aan het einde bij // close curl curl_close($ch); // debug: // print_r($_GET); // print_r($_SERVER); ?> </body> </html> |
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 | [php]// Stap 2 - Haal afhangbord data from jiba en filter de huidige tabel eruit. Als er meer dan 10 banen zijn moet dat in meerdere keren $b=1; $bmax = 3 $tableheight = 600*ceil(($bmax-1)/10); // Bereken de hoogte van de shaded area in het geval >10 banen do { // Build url based on baannummers curl_setopt($ch, CURLOPT_URL, "http://www.jiba-afhangbord.nl/content/html/73.asp?vn=".$vn."&eb=".$b."&ab=".($b+2)); // now call jiba $output = curl_exec($ch); // String replace vars om interne urls werkend te krijgen $uri = $_SERVER['SCRIPT_NAME']; // debug in case we need to change stuff // echo $output; // De tabel begint ergens waar een div style staat met "position: relative" // en eindigt bij een <table width="636"> waar de url in staat voor het wisselen banen // Het kan zijn dat er verenigingen zijn waar minder dan 10 banen zijn en daar zit wellicht die url tabel niet in. // We gooien alle html ervoor en erna gewoon weg $output = strstr($output, '<div style="position: relative;">'); if ($b>1) { // remove the top section with legenda when we have the next set $output = '<tr>'.strstr($output, '<td align="center"'); } $pos = strpos($output, '<table width="636"'); // end of section. Vlak hiervoor staat een </table> tag die we ook nog weg willen if ($pos === false) { if ($b==1) echo "Kan baangegevens niet ophalen"; } else { $output = substr($output, 0, $pos-10); // haal ook nog net het </table> tag extra weg // aanpassen interne URL's naar images en vervolgschermen (indien >10 banen) $output = str_replace("/content/html/73.asp", $uri, $output); // dit is strikt genomen oude code. Is al weggehaald $output = str_replace("/content/images/","",$output); // alle images staan nu op zelfde directory $output = str_replace("Kunstgras","Gras",$output); // Tekst is eigenlijk te lang voor linker kolom $output = str_replace("height:600px;","height:".$tableheight."px;",$output); // Absolute <div> tag met grijs shaded area $output = str_replace("color:#4B793E;","color:#6DA7FF;",$output); // Wijzig onleesbare kleur groen van reserveringen in blauw echo $output; } $b+=10; // next set } while ($b<$bmax); echo "</table></div>"; // en die moeten er nog aan het einde bij // close curl curl_close($ch); // debug: // print_r($_GET); // print_r($_SERVER); ?> </body> </html> |
1 2 3 | echo preg_replace(array("/\b(" . preg_quote("We'll Be Here (When You're Gone)", '/') . ")\b/i"), array("gelukt!"), "We'll Be Here (When You're Gone)"); |
1 2 3 | echo preg_replace(array("/\b(" . preg_quote("We'll Be Here (When You're Gone)a", '/') . ")\b/i"), array("gelukt!"), "We'll Be Here (When You're Gone)a"); |
Dat is in dit geval niet erg. Je kunt hier op basis van .htaccess de user een echte of een previewversie serveren, als je Apache gebruikt. PHP gebruiken is hier zonde.quote:Op vrijdag 26 november 2010 09:53 schreef pickup52 het volgende:
Referrer werkt wel maar is te faken. Het beste zou zijn een apart script te maken voor het embedden die automatisch alleen een preview laat zien.
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |