Daar zat ik zelf dus ook al meteen aan te denken toen ik het hier ging postenquote:Op dinsdag 25 oktober 2011 16:03 schreef Crutch het volgende:
moeten je values niet tussen ''-jes staan?
Dat is toch niet perse nodig?quote:
1 2 3 | <?php VALUES (".implode(',',$info_array).")" ; ?> |
Niet perse nodig inderdaad (wel netjes !!). Vervang de implode met hetvolgende om alles tussen enkele quotes te krijgen:quote:Op dinsdag 25 oktober 2011 16:04 schreef YazooW het volgende:
[..]
Daar zat ik zelf dus ook al meteen aan te denken toen ik het hier ging posten![]()
Ga het eens even uitproberen.
[..]
Dat is toch niet perse nodig?
1 2 3 | <?php $query = "'" . implode('\',\'', $array) . "'"; ?> |
Excuus, ze stonden 1tje te ver naar buitenquote:Op dinsdag 25 oktober 2011 16:13 schreef YazooW het volgende:
Je pastebin oplossing gebruikt, returnt: unexpected T_CONSTANT_ENCAPSED_STRING
Return nog steeds een foute query:quote:Op dinsdag 25 oktober 2011 16:16 schreef baaart het volgende:
[..]
Excuus, ze stonden 1tje te ver naar buiten
http://pastebin.com/si9QEmsP
Ik heb er nu helaas geen tijd meer voor, werk wacht. Ik ga vanavond weer verder.quote:VALUES ('".implode(\'',\'',)."')Array ( [0] => Ross [1] => Turnbull [2] => England [3] => 4 January 1985 [4] => 26 [5] => England [6] => Bishop Auckland [7] => Goalkeeper [8] => 193 cm [9] => 85 kg )
Huh? M'n laatste werkt gewoon. Print je query nog eens inclusief de error en error nummer.quote:Op dinsdag 25 oktober 2011 16:18 schreef YazooW het volgende:
[..]
Return nog steeds een foute query:
[..]
Ik heb er nu helaas geen tijd meer voor, werk wacht. Ik ga vanavond weer verder.
Nogmaals bedankt iedereen!
edit. nu copy ik de print_r op de oplossing van Crutch, die ook weggeedit is nu.
oplossing van baaart gaf hetzelfde op het gedeelte van ('".implode(\'',\'',)."') achter VALUES na.
je verwart ` met '.quote:Op dinsdag 25 oktober 2011 16:37 schreef Luchtkoker het volgende:
`` is niet per se nodig bij tabel namen, kolomnamen, etc, maar string quotes zijn wel zeker nodig.
Mijn dank is grootquote:
Als je PDO gebruikt, hoef je veel minder moeite te doen bij het maken van de querystring. Je hoeft parameters dan niet te escapen, dat wordt voor je gedaanquote:Op dinsdag 25 oktober 2011 11:02 schreef baaart het volgende:
[..]
Wat heeft dat te maken met dat hij niet weet hoe een string op te bouwen... en sowieso PDO voor mysql, nah.
dat werkt niet, draai maar met echo 'hoi'; op regel 3.quote:
1 2 3 4 5 6 7 8 9 10 11 12 | <?php while(true) { $starttime = microtime(true); // doe hier elke 3 seconden iets, wat minder dan 3 seconden duurt echo time(); usleep( 3e6 - (microtime(true) - $starttime) ); } ?> |
lolwut?quote:
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 | <?php $query = 'INSERT INTO table (row1, row2,row3,row4,etc) VALUES ("'. implode('",""', $infoarray).'")'; echo $query; // dit zou dus een goede query terug moeten geven als je zeker weet dat de data geldig is. // mijn functie (lichtelijk aangepast aangezien deze in mijn script is geintegreerd) // $data moet er als volgt uit zien // array('naam' => 'naamhier', 'achternaam' => 'blabla', 'etc' => 'jesnaptmijnpunt') function insert($table, $data = array()) { if(count($data) > 0) { $sql = 'INSERT INTO '.$table.' '; foreach($data as $key => $value) { $keys .= ' '.$key.','; $values .= ' "'.mysql_real_escape_string($value).'",'; } $keys = substr($keys, 0, -1); $values = substr($values, 0, -1); $sql .= '('.$keys.') VALUES ('.$values.')'; $result = mysql_query($sql); if(mysql_affected_rows($result) > 0) { return true; } else { echo mysql_error(); return false; } } |
dat zeker ja. Dit is ook mijn functie en ik weet 100% zeker dat mijn input goed is. Dit omdat ik een model heb van elke tabel met daarin aangegeven wat de primary key is en welke rows aagepast mogen worden door het script.quote:Op dinsdag 25 oktober 2011 19:23 schreef GlowMouse het volgende:
Je moet nu nog opletten waar de keys vandaan komen.
Een oplossing met array_map, implode, array_keys en array_values kan de leesbaarheid vergroten, evenals verplaatsen van regel 15 naar regel 22.
Ah, inderdaad. Hij doet iets meer cycles dan 1 per seconde natuurlijkquote:Op dinsdag 25 oktober 2011 18:42 schreef GlowMouse het volgende:
[..]
dat werkt niet, draai maar met echo 'hoi'; op regel 3.
Cronjobs werken op hele minuten.quote:Op dinsdag 25 oktober 2011 19:57 schreef Tijn het volgende:
[..]
Ah, inderdaad. Hij doet iets meer cycles dan 1 per seconde natuurlijk
Even 3 seconden sleepen lijkt me dan idd ook de beste oplossing. Of anders helemaal geen loop in je script en het gewoon elke 3 seconden aanroepen via een cronjob ofzo.
Je hebt gelijk, hij werkt gewoon. Denk dat ik een klein foutje heb gemaakt met jou code kopiëren.quote:Op dinsdag 25 oktober 2011 16:21 schreef baaart het volgende:
[..]
Huh? M'n laatste werkt gewoon. Print je query nog eens inclusief de error en error nummer.
Ach, inderdaad. Ik faal weer lekkerquote:Op dinsdag 25 oktober 2011 19:57 schreef GlowMouse het volgende:
[..]
Cronjobs werken op hele minuten.
Het is ook niet logisch, komt denk ik nog uit de tijd dat het bekijken wélke cronjob nou precies gedraaid moet worden nog niet was geoptimaliseerd, en het zo tijdrovend was dat het niet elke seconde gedraaid kon worden (van elke user werd de cronfile elke keer ingelezen; tegenwoordig - overigens al tientallen jaren - houdt cron bij wat de volgende job zal zijn).quote:
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |