1 2 3 | public $sub = array(); ?> |
1 2 3 4 5 6 7 8 9 | function GetSub() { $matches = array(); preg_match_all('pregstring',$this->data,$this->sub); } ?> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | ( [0] => Array ( ) [1] => Array ( ) [2] => Array ( ) ) |
1 2 3 4 5 6 7 8 9 10 11 12 | class JortK { public $sub = array(); function GetSub() { preg_match_all('/s/', 'asdfasdfasdf', $this->sub); } } $j = new JortK(); $j->GetSub(); print_r($j->sub); ?> |
1 2 3 4 5 6 7 8 9 10 | ( [0] => Array ( [0] => s [1] => s [2] => s ) ) |
Waarom niet gewoon dan SELECT veld1, veld2, veld3 FROM table doen?quote:Op donderdag 6 november 2008 15:18 schreef ursel het volgende:
Kan je een "SELECT * " SQL uitvoeren waarbij je 1 kolom exclude uit de resultaten?
Ik ben momenteel bezig om van ons archive-proces deze ook te gebruiken om producten te kunnen klonen.quote:Op donderdag 6 november 2008 15:28 schreef JortK het volgende:
[..]
Waarom niet gewoon dan SELECT veld1, veld2, veld3 FROM table doen?
Afhankelijk van je doel.quote:Op donderdag 6 november 2008 15:32 schreef Tijn het volgende:
Het is sowieso netter om geen "SELECT *" te gebruiken.
Want? Het is netter om 10 kolommen op te sommen wanneer je 10 kolommen hebt, i.p.v. *? Says who?quote:Op donderdag 6 november 2008 15:32 schreef Tijn het volgende:
Het is sowieso netter om geen "SELECT *" te gebruiken.
Tis eerder dat je de order kan garanderen als je niet * gebruikt, maar elk veld apart definieert. Anders kan het zijn dat iemand een table wijzigt en de order daarmee wijzigt, je app breekt omdat ie X verwacht daar waar hij Y krijgt.quote:Op donderdag 6 november 2008 16:11 schreef CraZaay het volgende:
[..]
Want? Het is netter om 10 kolommen op te sommen wanneer je 10 kolommen hebt, i.p.v. *? Says who?
Ik ken het hele concept van "breekbare order" niet, leg uit? Daarnaast lijkt het me niet eenvoudig om met een select iets te wijzigen in een tabelquote:Op donderdag 6 november 2008 17:10 schreef slacker_nl het volgende:
Tis eerder dat je de order kan garanderen als je niet * gebruikt, maar elk veld apart definieert. Anders kan het zijn dat iemand een table wijzigt en de order daarmee wijzigt, je app breekt omdat ie X verwacht daar waar hij Y krijgt.
De orde is de volgorde, bij * is de volgorde zoals de table is aangemaakt, als ik vervolgens twee alters op een table uitvoer waarbij de orde van de velden veranderd, bijv:quote:Op donderdag 6 november 2008 19:03 schreef CraZaay het volgende:
Ik ken het hele concept van "breekbare order" niet, leg uit? Daarnaast lijkt het me niet eenvoudig om met een select iets te wijzigen in een tabel
1 2 3 4 5 6 7 8 9 10 | if(!is_array($lines)) die("File kan niet worden geopend."); foreach($lines as $line) { list($id, $name,$x, $y, $player, $points, $rank) = explode(',', $line); $name = urldecode($name); $name = addslashes($name); mysql_query("INSERT INTO village SET id='$id', name='$name', x='$x', y='$y', player='$player', points='$points', rank='$rank'"); } |
wat doe ik verkeerd?quote:File kan niet worden geopend.
Waarschijnlijk ondersteunt gzfile() het http://-protocol niet.quote:Op donderdag 6 november 2008 21:05 schreef rulerofdeath het volgende:
hallo![]()
ik probeer de inhoud van een bestand in mijn database te krijgen en gebruik hiervoor deze code:
[ code verwijderd ]
ik krijg telkens
[..]
wat doe ik verkeerd?
Als je expliciet aangeeft dat je "SELECT val FROM ..." wilt, en deze kolom bevat opeens de data die voorheen bekend was als val2, dan heb je toch alsnog hetzelfde probleem, of begrijp ik je verkeerd?quote:Op donderdag 6 november 2008 20:01 schreef slacker_nl het volgende:
De volgorde is id, val, val2. Als ik nou val2 naar val rename en val naar val2 dan wordt de volgorde:
id, val2, val
Logisch, maar als ik dan een applicatie heb die select * from blaat uitvoert en bij val altijd koe of paard terugkrijgt (om maar een willekeurig iets te zeggen), maar nu omdat het val2 is, wordt dit boer of boerin. M'n applicatie verwacht dit niet, dan breek ik de applicatie (en niet de database uiteraard!). Als je checks op de data uitvoert zullen die checks failen, omdat je impliciet uitgaat van een bepaalde volgorde. Als je dit expliciet aangeeft in je query heb je dit hele probleem niet.
De melding zegt het al, je systeem/profiel heeft te weinig geheugen voor deze opdracht. Of je moet meer geheugen aanvragen of je moet je script op een andere manier gaan realiseren (bv via commandline de zip file extracten en dan rustig aan inlezen)quote:Op donderdag 6 november 2008 21:48 schreef rulerofdeath het volgende:
ik krijg nu een andere melding, ik zit nu ook bij een andere provider:
Fatal error: Allowed memory size of 16777216 bytes exhausted (tried to allocate 1048576 bytes) in /var/www/vhosts/biertafel.eu/httpdocs/index.php on line 1
(lijnnummer aangepast aan codefragment)
Je begrijpt me verkeerd, stel... iemand dumpt de database, maakt wijzigingen in de dump, dropped de originele table en creeert opnieuw de table, alleen zijn val en val2 van volgorde gewijzigd. Bij select * is de volgorde van val en val2 dus anders dan jij in eerste instantie verwacht.. Als je select val, val2 gebruikt veranderd er niks, en heb je dus ook geen problemen met deze wijziging..quote:Op donderdag 6 november 2008 21:53 schreef CraZaay het volgende:
[..]
Als je expliciet aangeeft dat je "SELECT val FROM ..." wilt, en deze kolom bevat opeens de data die voorheen bekend was als val2, dan heb je toch alsnog hetzelfde probleem, of begrijp ik je verkeerd?
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |