Arrayvars veranderen in 1 regel

  • Een goede maat van mij zat met het volgende probleem.


    In het volgende script wilt het wel goed echoën, maar bij het inserten niet.


    Verder info:
    Ik heb een script gemaakt met curl die alles via binnenhaalt van een site en daarna een regex die twee gegevens opslaat in een array, en dat zo'n 40 keer.
    Op deze manier ontstaan er dus dubbele array's ($array[0][x] en $array[1][x]).
    Door middel van een for loop wil ik dan alle gegevens invoeren in een MySQL tabel, hier gaat het echter fout.
    Ik heb voor de zekerheid in mijn script al ingebouwd dat hij de vars echoed zodat ik sneller zie wat het probleem is.
    Op de pagina werkt de echo perfect; alle gegevens worden netjes geechoed zoals het zou moeten.
    Als ik echter 1 regel eronder het wil invoeren in de database gaat het fout.
    Een getal uit de zin uit de bron van de site wordt prima ingevoerd (1e kolom).
    Een woord uit dezelfde zin uit de bron wordt echter niet goed ingevoerd (2e kolom).
    In plaats van het woord, wat dus wel prima wordt geechoed, wordt de hele zin uit de bron ingevoerd (deze wordt echter afgekapt aangezien ik het maximum heb ingesteld op 12).


    Ik, en een paar anderen met mij, hebben echt totaal geen idee waarom de inhoud van de var van de ene op de andere zin veranderd, iemand die de fout kan vinden?


    PHP
    preg_match_all($regex, $data, $regs);
    
    
    $a = count($regs[0]);
    for ($x = 0;$x < $a;$x++) {
        echo $regs[0][$x];
        echo $regs[1][$x];
        mysql_query("INSERT INTO `Tabel`  VALUES (".$regs[1][$x].",'".$regs[0][$x]."','true')");
    }
  • Wij kunnen zo natuurlijk ook niet zomaar zien waar het aan licht.


    Maar ik heb wel enkele tips:
    - Gebruik var_dump eens op de $regs variabele (en post het resultaat eventueel).
    - De eerste waarde wordt zonder aanhalingstekens in de database gezet, ik weet niet wat voor een datatype dat is, maar een intval e.d. uitvoeren lijkt me minstens verstandig.

Participate now!

Heb je nog geen account? Registreer je nu en word deel van onze community!