2016-04-30 7 views
0

Ich versuche, Informationen, die ich in einem Array habe, in eine MySQL-Tabelle einzufügen. Hier ist mein Code:PHP und Mysqli Abfrage Fehler zurückgeben?

include "db_conx.php"; 
$transactionid = array(); //stores our output 

Also zuerst wir die Ergebnisse aus der URL packen, und dann verwenden wir preg_match_all die Tags zu finden, suchen wir:

$url = file_get_contents("https://blockchain.info/address/1CRBDxjEQV317Q9DZZ13kVE23d2iY9Brqg?filter=2"); 

preg_match_all('#<a class="hash-link" href="/tx/([a-zA-Z0-9]*)">([a-zA-Z0-9]*)</a>#Uis', $url, $matches); 

jedes Grabs Spiel aus dem Ausdruck oben ^:

foreach($matches[0] as $transactionids){ 
$transactionid[] = "<div class='transactionids' >".$transactionids."</div>"; 
} 

Bereiten Sie die Datenbank für Ergebnisse:

$iresult = mysqli_query("INSERT INTO bitcoin (transaction) VALUES ("$transactionid[$i]")"); 

Dann ist das hier meine Schleife, die ich die Ergebnisse aufzeichnen verwenden:

for($i = 0; $i < count($transactionid); $i++){ 
$iresult .= $transactionid[$i]; 
} 

Aber es kehrt diesen Fehler:

Parse error: syntax error, unexpected '$transactionid' on line 21 

EDIT: so, nachdem sie die drei Antworten lesen Sie weiter unten nun ein Einsätze leere Zeile anstelle der Information.

Antwort

2

Ich glaube, Sie etwas verwenden: -

$con=mysqli_connect("localhost","my_user","my_password","my_db"); 
$iresult = mysqli_query($con, "INSERT INTO bitcoin (transaction) VALUES (".$transactionid[$i].")"); 
+0

Gut, das hat mich irgendwo. Jetzt gibt es eine leere Zeile ein. – joeytrumann

0

Sie haben vergessen, die verschiedenen Zeichenfolgen in Ihrer $ SQL-Anweisung mit dem . Periodenoperator zu verketten. Ändern Sie den folgenden Code ein:

$iresult = mysqli_query("INSERT INTO bitcoin (transaction) VALUES ("$transactionid[$i]")"); 

zu diesem Code:

$iresult = mysqli_query("INSERT INTO bitcoin (transaction) VALUES (".$transactionid[$i].")");