1 2 3 4 5 6 7 | if(preg_match('/^[A-Za-z0-9\\-_]{4,15}$/', $username) == 0) { echo 'fout'; } else { echo 'goed'; } ?> |
sorry maar:quote:Op dinsdag 25 november 2008 11:17 schreef hello_moto1992 het volgende:
Ik heb een header.php :
[ code verwijderd ]
In de style.css heb ik header.php als achtergrond van de header ingesteld. Dit werkt dus.
quote:imagestring ($im, 5, 5, 5, "ERROR, deze error kan voorkomen als deze ", $text_colorr);
imagestring ($im, 5, 5, 25, "script geen plaatjes kan vinden", $text_colorr);
imagestring ($im, 3, 5, 100, "Door oorzaak kan zijn:", $text_color);
imagestring ($im, 2, 5, 125, "1. de script kan geen plaatjes vinden met jou gewenste extensies", $text_color);
imagestring ($im, 2, 5, 150, "2. Er bevinden geen plaatjes in de directory", $text_color);
quote:
1 2 3 4 5 | if(!preg_match('/^[\w+\\-_]{4,15}$/', $username)) { echo "fout" } ?> |
Ik heb het niet geschrevenquote:
quote:
1 2 3 4 5 6 7 8 | <?php if($_SERVER['PHP_SELF']!='/index.php'){ include("header.php"); }else{ echo "<img src=\"1.png"; } ?> |
1 2 3 4 5 6 7 8 9 10 11 12 13 | function ins_char2string($char, $string, $pos = 3) { $parts = preg_split('//', strrev(trim($string)), -1, PREG_SPLIT_NO_EMPTY); $result = ''; foreach($parts as $k => $v) { $result .= $v; if ( $pos == 0 || ($k + 1) % $pos == 0 ) { $result .= $char; } } return trim(strrev($result)); } ?> |
Ja of gewoon number_format gebruikenquote:
1 2 3 4 | $num = 6324342; print number_format($num, 0, " ", " "); ?> |
Tip: niet googlen maar op http://nl.php.net/manual/en/ref.strings.php kijkenquote:Op woensdag 26 november 2008 18:11 schreef slacker_nl het volgende:
ik had al zo'n idee dat PHP er een functie voor kende, maar kon hem niet vinden (aka niet echt goed gegoogled).
php number format in google werkt ook perfect, alleen moet je dan wel de juiste zoekterm hebben. Normaliter zoek ik zo functies op, php <keywords> in google works. Maar zoals gezegd, heb niet gegoogled. Maar bovenstaande functie gebruik ik oa voor formatten van mac addressen (heb 'm gejat uit een perl script van me). Genoeg hieroverquote:Op woensdag 26 november 2008 18:48 schreef CraZaay het volgende:
[..]
Tip: niet googlen maar op http://nl.php.net/manual/en/ref.strings.php kijken
1 2 3 4 5 6 7 8 9 | 1 -> .. 2 -> .. 3 -> .. 4 -> .. 5 -> title 6 -> .. 7 -> batman begins 8 -> .. |
Ik mag toch hopen dat je iets sneller en beter kunt vinden in de manual dan via Googlequote:Op woensdag 26 november 2008 19:34 schreef slacker_nl het volgende:
php number format in google werkt ook perfect
http://nl2.php.net/manual/en/function.array-search.php geeft de key van een bepaalde value. Tel daar twee bij op en gebruik dat als key zou ik zeggen.quote:Op woensdag 26 november 2008 22:09 schreef saban het volgende:
Stel ik heb een array:
[ code verwijderd ]
De titel, in dit geval, batman begins wil ik terug krijgen als $string, echter staan 'title' en 'batman begins' nooit op 5 en 7, echter is wel altijd zo wanneer 'title' x is, dan is 'batman begins' x+2.
Dus de echte titel komt altijd 2 'rows' na 'title'.
Hoe dit te doen?
Zoiets ongeveer dan:quote:Op woensdag 26 november 2008 22:09 schreef saban het volgende:
Stel ik heb een array:
[ code verwijderd ]
De titel, in dit geval, batman begins wil ik terug krijgen als $string, echter staan 'title' en 'batman begins' nooit op 5 en 7, echter is wel altijd zo wanneer 'title' x is, dan is 'batman begins' x+2.
Dus de echte titel komt altijd 2 'rows' na 'title'.
Hoe dit te doen?
1 2 3 4 | $key = array_search("title",$array); $string = $array[$key+2]; ?> |
Ik zou zeggen zet ze in een array en loop er doorheen. Maak een $sorted array en check voor ieder item of $sorted[$key] bestaat, waarbij $key de naam is zonder cijfers. Zo nee, maak de $sorted[$key] array en voeg de string toe als nieuwe value, en als 'ie al bestaat voeg dan alleen toe.quote:Op woensdag 26 november 2008 22:12 schreef Chandler het volgende:
Ik vond die van slacker_nl zeer orgineel en zal er dan ook gebruik van maken ook!
Nu en ander vraag over groeperen, even de logica daar achter.
stel ik heb een lijst met bestandsnamen
pict1 pict2 pict3 pict4 img1 img2 img3 img4 img5 img6 img7 afb1 abf2 abf3 abf4
picture1 picture2 picture3 picture4 image1 image2 image3 image4 image5 image6 image7 afbeelding1 abf2 abf3 abf4 etc etc etc
en wil deze eingelijk groeperen op deze manier
(knip)
Hoe moet ik dit oplossen?
Ik heb google standaard open, dus dat gebruik ik. 9 vd 10 keer kom je direct op de link naar de betreffende functie uit en dan ga ik wel op php.net pluizen als het niet voldoende is. Mijn manier van dingen zoeken is de google toolbar in firefoxquote:Op woensdag 26 november 2008 22:11 schreef CraZaay het volgende:
[..]
Ik mag toch hopen dat je iets sneller en beter kunt vinden in de manual dan via Google
Tip: zet php.net gewoon in de zoekbalk.quote:Op woensdag 26 november 2008 @ 23:10 schreef slacker_nl het volgende:
[..]
Ik heb google standaard open, dus dat gebruik ik. 9 vd 10 keer kom je direct op de link naar de betreffende functie uit en dan ga ik wel op php.net pluizen als het niet voldoende is. Mijn manier van dingen zoeken is de google toolbar in firefox
ik wil alleen een mogelijkheid hebben terug te kunnen vallen, de hoofd website zal gewoon de laatste php5 gebruiken i.c.m. laatste apachequote:Op zondag 30 november 2008 03:09 schreef slacker_nl het volgende:
upgraden! php4 blijven gebruiken terwijl we nu al op 5.2 oid zitten..![]()
Is het niet veel logischer om die scripts die niet op PHP5 werken even aan te passenquote:Op zondag 30 november 2008 09:18 schreef mschol het volgende:
[..]
ik wil alleen een mogelijkheid hebben terug te kunnen vallen, de hoofd website zal gewoon de laatste php5 gebruiken i.c.m. laatste apache![]()
mits kleinere scripts: ja.. anders nee...quote:Op zondag 30 november 2008 11:50 schreef Roy_T het volgende:
[..]
Is het niet veel logischer om die scripts die niet op PHP5 werken even aan te passen
1 van de twee (of allebei) als CGI draaien.quote:Op zondag 30 november 2008 12:43 schreef HuHu het volgende:
Het moet kunnen, want op FOK! draaiden we dat ook op de dev-server. Maar ik heb geen idee hoe.
1 |
array_diff zou opzich wel kunnen, maar in die methode zit ook weer een subtiel detail (volgens de comments op php.net dan). Misschien is het toch het makkelijkste om iedere key/value uit $a te gaan vergelijken met die van $b...quote:Op maandag 1 december 2008 15:39 schreef saban het volgende:
http://www.php.net/manual/en/function.array-diff.php
http://www.php.net/manual/en/function.array-diff-key.php
hier heb je niks aan?
Alles zonde waarde in PHP is NULL. Een lege string is ook NULL. Een integer met waarde 0 is ook NULL.quote:Op maandag 1 december 2008 17:07 schreef Roy_T het volgende:
Waarom de fuck is (array() == null) true? Het is toch niet logisch dat een lege array null is?
I know, maar het blijft imo onlogischquote:Op maandag 1 december 2008 17:36 schreef Tijn het volgende:
Alles zonde waarde in PHP is NULL. Een lege string is ook NULL. Een integer met waarde 0 is ook NULL.
Je kunt checken of iets echt NULL is door een Identical comparison te doen (===).
Ik snap heel goed hoe het werktquote:Op maandag 1 december 2008 21:03 schreef GlowMouse het volgende:
Bij == worden de dingen links en rechts eerst omgezet in een type dat vergelijkbaar is, zie http://nl.php.net/manual/en/types.comparisons.php
1 2 3 | echo ($doc->getElementsByTagName('XML')->item(0)->getAttribute('Kleur')); ?> |
Wat moet je dan doen wat zo subtiel is? Als ik namelijk eea test werkt het perfect:quote:Op maandag 1 december 2008 16:29 schreef Gloeidoos het volgende:
[..]
array_diff zou opzich wel kunnen, maar in die methode zit ook weer een subtiel detail (volgens de comments op php.net dan). Misschien is het toch het makkelijkste om iedere key/value uit $a te gaan vergelijken met die van $b...
1 2 3 4 5 6 7 8 9 10 11 | $array_a = array("naam" => 'slacker_nl', "id" => 187069); $array_b = array("naam" => 'slacker_nl', "id" => 187069, "type" => 'vraag'); #$array_b = array("naam" => 'gloeidoos', "id" => 187069, "type" => 'vraag'); print_r(array_intersect_assoc($array_a, $array_b)); print_r(array_intersect($array_a, $array_b)); print_r(array_diff_assoc($array_a, $array_b)); print_r(array_diff($array_a, $array_b)); ?> |
En terecht: <kleur> is geen attribuut, dus je hebt niets aan getAttribute()..quote:Op maandag 1 december 2008 23:50 schreef Geqxon het volgende:
Ik heb een simpele string: "<XML><Kleur>Groen</Kleur></XML>". Dit staat altijd zo vast. Hoe kan ik hier nou groen uit halen?
[ code verwijderd ]
Bovenstaand lijkt mij logisch qua domdocument, domnodelist en domelements, maar geeft gewoon keihard een lege string terug...![]()
Om je code te laten werken moet je xml er als volgt uit zien:quote:Op maandag 1 december 2008 23:50 schreef Geqxon het volgende:
Ik ben een beetje vastgelopen op het gecompliceerde vak XML.
Ik heb een simpele string: "<XML><Kleur>Groen</Kleur></XML>". Dit staat altijd zo vast. Hoe kan ik hier nou groen uit halen?
[ code verwijderd ]
Bovenstaand lijkt mij logisch qua domdocument, domnodelist en domelements, maar geeft gewoon keihard een lege string terug... ;(
1 |
En aangezien de XML een vaste waarde is... hoe kan ik mijn code hier op aanpassen?quote:Op dinsdag 2 december 2008 11:10 schreef Paupermans het volgende:
[..]
Om je code te laten werken moet je xml er als volgt uit zien:
[ code verwijderd ]
quote:Op dinsdag 2 december 2008 12:33 schreef Geqxon het volgende:
[..]
En aangezien de XML een vaste waarde is... hoe kan ik mijn code hier op aanpassen? :)
1 2 3 | $doc->getElementsByTagName('kleur') ?> |
quote:
1 2 3 | $doc->getElementsByTagName('kleur')->item(0)->nodeValue ?> |
Wat voor optimalisatie voert zo'n class dan uitquote:Op dinsdag 2 december 2008 20:02 schreef Chandler het volgende:
GlowMouse melde mij dat het in mijn geval voor het optimaliseren van een database zeer handig is om te werken met database classes!
Caching?quote:Op dinsdag 2 december 2008 21:40 schreef Roy_T het volgende:
[..]
Wat voor optimalisatie voert zo'n class dan uit
Een databaseklasse maakt het bijvoorbeeld makkelijk om dmv transacties een aantal queries te verzamelen en gezamelijk uit te voeren, waardoor je je database efficiënter kunt gebruiken. Dat is althans wat er in de documentatie van PDO staat:quote:Op dinsdag 2 december 2008 21:40 schreef Roy_T het volgende:
[..]
Wat voor optimalisatie voert zo'n class dan uit
quote:Transactions are typically implemented by "saving-up" your batch of changes to be applied all at once; this has the nice side effect of drastically improving the efficiency of those updates. In other words, transactions can make your scripts faster and potentially more robust (you still need to use them correctly to reap that benefit).
Dat kan ja. En transacties zou ook kunnen (indien i.c.m. MySQL: niet op MyISAM tabellen). Maar er is geen gouden regel die zegt dat database classes dat "dus" kunnen en voor enige optimalisatie zorgen. Dat was eigenlijk ook het punt van mijn retorische vraag: het is maar net wat je erin bakt.quote:
Zelfs als ik niet in cakephp bezig ben gebruik ik classes om me databases aan te roepenquote:Op dinsdag 2 december 2008 22:58 schreef Roy_T het volgende:
Chandler, dan moet je dus wel specifiek zoeken naar een class die goede benchmarking info biedt. Niet iedere class is hier even sterk in. "Wie kent een database class?" komt neer op het zoeken naar een rode auto die binnen 8 seconden aan de 100 km/uur zit, en vervolgens bij een autohandelaar vragen of 'ie "een auto" te koop heeft staan
mysql_query() direct aanroepen, zijn er nog mensen die dat doen? Gebruikt nog niet iedereen (MVC-)frameworks en (ActiveRecord-achtige) database classes?
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 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 | error_reporting(E_ALL); class MySQL { // variables var $db; var $query; var $queryres; var $data; // statistics var $query_cnt; var $fetch_cnt; var $insert_cnt; var $result_cnt; var $num_rows_cnt; var $affected_rows_cnt; function connect($user, $pass, $database, $host = 'localhost', $error = 'Site kan geen verbinding maken met MySQL database in functie :: connect()') { // Connectie leggen $this->db = mysql_connect($host, $user, $pass ); // Kijken of de connectie gelukt is, en of de database geselecteerd kon worden if(!$this->db || !mysql_select_db($database, $this->db)) { $this->m_error("DB Connect", mysql_error()); die($error); } } function disconnect() { // $res legen if(!@mysql_free_result($this->queryres)) { unset($this->queryres); } // Verbinding sluiten mysql_close($this->db); } function run_query($sql, $noCache = false) { if ($noCache == true) { mysql_query($sql, $this->db); $this->query_cnt++; } else { $this->query = $sql; $this->queryres = mysql_query($sql, $this->db); $this->query_cnt++; } if (!$this->queryres && $noCache != true) { $this->m_error($this->query, mysql_error()); die('Error in query: <br /><strong>Query:</strong> <hr>' . $this->query . '<hr><strong>MySQL error:</strong> ' . mysql_error() . '<hr>'); } } function num_rows($sql = NULL) { if ($sql != NULL) { $this->query = $sql; $this->run_query($sql); $this->num_rows_cnt++; return mysql_num_rows($this->queryres); } elseif ($this->queryres && $this->query == $sql) { $this->num_rows_cnt++; return mysql_num_rows($this->queryres); } elseif ($this->query != $sql) { $this->query = $sql; $this->run_query($sql); $this->num_rows_cnt++; return mysql_num_rows($this->queryres); } else { $this->m_error($this->query, mysql_error()); die('Geen query uitgevoerd voor functie :: num_rows()'); } } function fetch_object($sql = NULL) { if ($this->queryres && $sql == NULL) { $this->fetch_cnt++; return mysql_fetch_object($this->queryres); } elseif($sql != NULL) { $this->query = $sql; $this->run_query($sql); $this->fetch_cnt++; return mysql_fetch_object($this->queryres); } else { $this->m_error($this->query, mysql_error()); die('geen query uitgevoerd voor functie :: fetch_object()'); } } function insert_id($sql = NULL) { // Kijken of er een query meegegeven is, zo ja uitvoeren if ($sql != NULL) { $this->run_query($sql); } elseif ($sql == NULL && !$this->queryres) { $this->m_error($sql, mysql_error()); die('Geen query uitgevoerd voor functie :: insert_id()'); } $this->insert_cnt++; // Mysql_insert_id uitspugen return mysql_insert_id($this->db); } function affected_rows($sql = NULL) { // Kijken of er een query meegegeven is, zo ja uitvoeren if ($sql != NULL) { $this->run_query($sql); } elseif ($sql == NULL && !$this->queryres) { die('Geen query uitgevoerd voor functie :: affected_rows()'); } $this->affected_rows_cnt++; // Mysql_insert_id uitspugen return mysql_affected_rows($this->db); } function result($row = 0, $sql = NULL, $noCache = false) { // Kijken of er een query meegegeven is, zo ja uitvoeren if ($sql != NULL) { if ($noCache != false) { $tmpres = mysql_query($sql, $this->db); $this->query_cnt++; } else { $this->run_query($sql); } } elseif ($sql == NULL && !$this->queryres) { $this->m_error($sql, mysql_error()); die('Geen query uitgevoerd voor functie :: result()'); } $this->result_cnt++; // Mysql_insert_id uitspugen if ($noCache != false) { $res = @mysql_result($tmpres, $row); } else { $res = @mysql_result($this->queryres, $row); } if ($res == null) { return "0"; } else { return $res; } } function m_error($string, $error) { $buf = "Error in MySQL\r\n -----------------------\r\n Query: -----------------------\r\n" . $string . "\r\n -----------------------\r\n Error: -----------------------\r\n" . $error . "\r\n -----------------------\r\n"; $fd = fopen("mysql_error.txt", "w+"); fputs($fd, $buf); fclose($fd); } function stats() { return array("queries" => (($this->query_cnt == 0) ? "0" : $this->query_cnt), "fetch" => (($this->fetch_cnt == 0) ? "0" : $this->fetch_cnt), "insert" => (($this->insert_cnt == 0) ? "0" : $this->insert_cnt), "result" => (($this->result_cnt == 0) ? "0" : $this->result_cnt), "num_rows" => (($this->num_rows_cnt == 0) ? "0" : $this->num_rows_cnt), "affected_rows" => (($this->affected_rows_cnt == 0) ? "0" : $this->affected_rows_cnt)); } } ?> |
Zelfde geld voor de functiesquote:Op woensdag 3 december 2008 11:52 schreef Spike1506 het volgende:
@Chandler Gebruik ipv var $var eens, private/proteced/public $var's enz.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | function customexplode($invoer) { $uitnr=0; $startpos=0; do { preg_match('/[^\',][^,\']*|\'([^\'\\\\]|\\\\.)*\'/', substr($invoer, $startpos), $matches, PREG_OFFSET_CAPTURE); if (count($matches)>0) { $t = $matches[0][0]; if (substr($t,0,1)=="'") $t=substr($t,1,strlen($t)-2); $uitvoer[$uitnr]=$t; $startpos += $matches[0][1] + strlen($matches[0][0]); $uitnr++; } } while (count($matches)>0); return $uitvoer; } ?> |
Mag ik vragen waarom? scheelt dit in preformance?quote:Op woensdag 3 december 2008 11:52 schreef Spike1506 het volgende:
@Chandler Gebruik ipv var $var eens, private/proteced/public $var's enz.
Zelfde vraag ;)quote:
1 2 3 4 5 6 7 8 | `stat_id` int(10) unsigned NOT NULL, `ip_id` int(10) unsigned NOT NULL, `referer_id` int(10) unsigned NOT NULL, `hits` int(10) unsigned NOT NULL, `lastdate` timestamp NULL default NULL, UNIQUE KEY `stat_id_2` (`stat_id`,`ip_id`,`referer_id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1; |
Het heeft o.a te maken met de toegankelijkheid van deze variablen/functies. Zie ook: Visibility @ PHP.net.quote:Op woensdag 3 december 2008 14:37 schreef Chandler het volgende:
[..]
Mag ik vragen waarom? scheelt dit in preformance?
[..]
Zelfde vraag
dit zou ik niet met regex doenquote:Op woensdag 3 december 2008 14:08 schreef Igen het volgende:
Stel, ik heb een aantal waarden die met komma's gescheiden zijn. Er kunnen ook strings bij zitten, die hebben dan aanhalingstekens eromheen. Bijvoorbeeld:
1,87932,'hoi, dit is een test','It\'s backslash (\\)',328,0
Nu wil ik die waarden van elkaar scheiden. Daarvoor heb ik de volgende functie gemaakt:
[ code verwijderd ]
Maar als ik die nu loslaat op een regel waarin een van de stukjes tekst tientallen kb's groot is, dan crasht PHP. Ik heb inmiddels begrepen dat dat met recursie in PCRE te maken heeft. Ik zit dus met de volgende vragen:
- Kan ik de maximale recursiediepte nu beperken naar een veilige waarde, of werkt de reguliere expressie dan niet meer goed?
- Kan je de reguliere expressie ook beter formuleren?
1 2 3 4 5 6 7 8 | function customexplode($invoer) { $return = array(); eval('$return = array(' . $invoer . ');'); return $return; } ?> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | function customexplode($invoer) { $currentstring=''; $result = array(); foreach( explode(',', $invoer) as $token) { if ($token{0} == '\'' || $currentstring != '') { $currentstring .= ',' . $token; if (substr($currentstring, -1) == '\'' && substr($currentstring,-2) !='\\\'' ) { $result[] = substr($currentstring, 2, -1); $currentstring=''; } } else $result[]=$token; } if ($currentstring !='') $result[]=substr($currentstring,2,-1); return $result; } ?> |
Waarom gebruik je niet de native CSV parse functies in PHP? fgetcsv() bijvoorbeeld.quote:Op woensdag 3 december 2008 14:08 schreef Igen het volgende:
Stel, ik heb een aantal waarden die met komma's gescheiden zijn. Er kunnen ook strings bij zitten, die hebben dan aanhalingstekens eromheen. Bijvoorbeeld:
1,87932,'hoi, dit is een test','It\'s backslash (\\)',328,0
Nu wil ik die waarden van elkaar scheiden.
Ik gok dat die functie zich verslikt in iets als 123,'hoi\\',456.quote:Op woensdag 3 december 2008 17:38 schreef ralfie het volgende:
[..]
Mooiere oplossing (ook zonder regex)
[ code verwijderd ]
(niet getest overigens, maar zou zo volgens mij wel moeten werken)
Omdat fgetcsv() alleen op bestanden werkt, en str_getcsv() nog niet in een stabiele versie van PHP beschikbaar is.quote:Op woensdag 3 december 2008 21:42 schreef Roy_T het volgende:
[..]
Waarom gebruik je niet de native CSV parse functies in PHP? fgetcsv() bijvoorbeeld.
als het alleen om een paar bullets in een sidebar gaat zou ik het gewoon met de hand doen...quote:Op donderdag 4 december 2008 13:11 schreef hello_moto1992 het volgende:
Ik heb een sidebarretje gemaakt waarin agendapunten komen te staan. Nou wil ik daar steeds de tekst van aan passen, maar dan moet ik steeds weer in de broncode gaan prutsen. Is hier niet een andere oplossing voor? Dat ik in een formuliertje alles kan invullen ofzo?
Iemand aanbevelingen?
En wat staat er precies in document.php?quote:Op vrijdag 5 december 2008 23:46 schreef immortals het volgende:
Dit is m'n error ik heb een bestandje: document.php en slaag het op onder htdocs en dan ga ik naar m'n browser en vul in : localhost/document.php en krijg dit!!
Warning: Unexpected character in input: '' (ASCII=92) state=1 in C:\xampp\htdocs\Document.php on line 2
Parse error: syntax error, unexpected T_STRING in C:\xampp\htdocs\Document.php on line 2
quote:Op vrijdag 5 december 2008 23:57 schreef Kerol het volgende:
Je moet " en niet '
SPOILEROm spoilers te kunnen lezen moet je zijn ingelogd. Je moet je daarvoor eerst gratis Registreren. Ook kun je spoilers niet lezen als je een ban hebt.
quote:Op zaterdag 6 december 2008 00:01 schreef mschol het volgende:
[..](maar mag wel)
@TS: lees de php.net echo() functie eens doorecho is geen functie maar een language construct. Je hoeft dus geen () te gebruiken.SPOILEROm spoilers te kunnen lezen moet je zijn ingelogd. Je moet je daarvoor eerst gratis Registreren. Ook kun je spoilers niet lezen als je een ban hebt.
Dat ziet er gewoon goed uit, dus ik snap die foutmelding niet.quote:Op vrijdag 5 december 2008 23:52 schreef immortals het volgende:
dit om precies te zijn
<?php
echo 'Hallo wereld!';
?>
1 2 3 | echo 'Hallo wereld!'; ?> |
het hoeft niet, het mag wel (wiskunde...)quote:Op zaterdag 6 december 2008 00:08 schreef Light het volgende:
[..]
echo is geen functie maar een language construct. Je hoeft dus geen () te gebruiken.
Ik heb ook niet gezegd dat het fout is om () te gebruiken. Het is net als met '' en "", beide zijn goed (hoewel er wel een verschil is tussen '' en ""). Mijn punt is gewoon dat je niet moet zeuren over '' en "" of over wel of geen () als het niet relevant is. En dat is het in dit geval niet.quote:Op zaterdag 6 december 2008 07:54 schreef MCootje het volgende:
[..]
het hoeft niet, het mag wel (wiskunde...)
omdat het dus wel mag/kan, is het netter om het wel te doen (omdat het veel weg heeft van een functie)
ook als je opeens de echo wilt veranderen door een functie, is het handig want dan staan de haakjes er alvast
denk hierbij aan een echo die je wilt (tijdelijk) even als var_dump wilt hebben
daarnaast is het in de meeste gevallen overzichtelijker als je ze wel gebruikt
het is maar wat je gewend bent, ik doe het wel om deze redenen
mvg
Marco
1 2 3 4 5 6 7 8 9 | $som=0; for ( $getal =2; $getal <= 2048; $getal*2) { $som = $som + $getal; echo "Getal:$getal"; } echo "De som is $som"; ?> |
quote:Op zaterdag 6 december 2008 11:56 schreef Kerol het volgende:
Ik wil graag mijn FOR loop elke keer een stap van *2 laten nemen. Het lukt nu nog niet echt. Hoe kan ik dit het beste doen?
Tot nu toe heb ik dit;
[ code verwijderd ]
Als ik dit in mijn localhost bekijk krijg ik een pagina die tot in het oneindige $Getal: 2 echo'ed.
1 2 3 4 5 6 7 8 9 | $som=0; for ( $getal =2; $getal <= 2048; $getal*=2) { $som = $som + $getal; echo "Getal:$getal"; } echo "De som is $som"; ?> |
Je kunt beginnen met php leren. Als je met je knie op een of ander boek gaat liggen dan heb je dat wel onder de knie, maar je hebt nog steeds geen idee wat erin staat enzo.quote:Op zaterdag 6 december 2008 13:20 schreef immortals het volgende:
Ik heb php nu onder de knie maar hoe kan ik nu beginnen ?
tips pls!!
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 | // By product code $result = $db->query('SELECT id, product_code, product_code2 FROM product_feed_items WHERE (LENGTH(product_code) > 4 OR LENGTH(product_code2) > 4)'); while($item = $result->fetchRow()) { // by product codes $s = array(' ','-','/'); $search_q = ''; if ($this->realstrlen($item->product_code) > 4) { if (is_numeric(trim($item->product_code))) { $code = trim($item->product_code); $search_q .= 'product_code = "'.$code.'" OR product_code2 = "'.$code.'" '; } else { $code = str_replace($s,'*',$item->product_code).'*'; $search_q .= 'MATCH(product_code, product_code2) AGAINST("'.$code.'")'; } } if ($this->realstrlen($item->product_code2) > 4) { if ($search_q != '') $search_q .= ' OR '; if (is_numeric($item->product_code2)) { $code2 = $item->product_code2; $search_q .= 'product_code = "'.$code2.'" OR product_code2 = "'.$code2.'" '; } else { $code2 = str_replace($s,'*',$item->product_code2).'*'; $search_q .= 'MATCH(product_code, product_code2) AGAINST("'.$code2.'")'; } } $r = $db->query('UPDATE product_feed_items SET parent_product = "'.$item->id.'" WHERE ('.trim($search_q).') AND id != "'.$item->id.'"'); if ($r->numRows() > 0) { $db->query('UPDATE product_feed_items SET parent_product = 0 WHERE id = ?', $item->id); } } ?> |
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |