Hi Leute,
sorry erstmal für den schlechten Threadtitel, aber ich kann ja schlecht einen halben Roman da reinzwängen.
Ausgangssituation:
DAS GANZE IST AUCH ALS ÜBUNG FÜR OOP ANGELEGT.
Ich soll aus einer vorhandenen CSV-Datei Datensätze in eine Datenbank importieren.
Das Auslesen der CSV-Datei funktioniert auch.
Problem:
Ich arbeite das erste mal mit PDO. Dabei versuche ich mit einem prepare die DB vorzubereiten.
Beim dann folgenden execute kommt nix in die Datenbank. Könnt ihr mir vielleicht dabei weiterhelfen?
Code:
Grüße
Ra3L
sorry erstmal für den schlechten Threadtitel, aber ich kann ja schlecht einen halben Roman da reinzwängen.
Ausgangssituation:
DAS GANZE IST AUCH ALS ÜBUNG FÜR OOP ANGELEGT.
Ich soll aus einer vorhandenen CSV-Datei Datensätze in eine Datenbank importieren.
Das Auslesen der CSV-Datei funktioniert auch.
Problem:
Ich arbeite das erste mal mit PDO. Dabei versuche ich mit einem prepare die DB vorzubereiten.
Beim dann folgenden execute kommt nix in die Datenbank. Könnt ihr mir vielleicht dabei weiterhelfen?
Code:
PHP-Code:
public function __construct(){
$db = new PDO('mysql:host=localhost;dbname=db_ensdorf', 'root', '');
$this->stmt = $db->prepare(
"INSERT INTO db_ensdorf (uid,pid,tstamp, crdate,title,bdate,btime,edate,etime,fees,teaser, location)
VALUES (:uid,350,:tstamp,:tstamp,:title,:date,:btime,:date,:etime,:fees,:teaser, :location)");
$this->readCSV();
}
public function readCSV(){
$csv = file("http://127.0.0.1/endorf/data.csv");
$i = 500;
//echo $i.'<br>';
foreach ($csv as &$line){
$line = explode(";",$line);
$date = explode(" ",$line[2]);
$datefunctions = new DateFunctions;
$date[0] = $datefunctions->DateTransform($date[0]);
$date[1] = $datefunctions->TimeTransform($date[1]);
$line[3] = $datefunctions->TimeTransform($line[3]);
$uebertrag = array(
"$i",
time(),
"$line[1]",
"$date[0]",
"$date[1]",
"$line[3]",
"$line[5]",
"Veranstaltungsnr.:$line[0] Anzahl Termine:$line[4]",
"$line[6] $line[7] $line[8] $line[9]");
$this->setValues($uebertrag);
$i++;
}
unset($line);
echo 'Fertig.';
}
public function setValues($values) {
$this->uid=$values[0];
$this->tstamp=$values[1];
//$this->crdate=$values(1);
$this->title=$values[2];
$this->date=$values[3];
$this->btime=$values[4];
$this->etime=$values[5];
$this->fees=$values[6];
$this->teaser=$values[7];
$this->location=$values[8];
$this->BindParams();
}
public function BindParams(){
$this->stmt->bindparam(':uid',$this->uid, PDO::PARAM_INT);
$this->stmt->bindparam(':tstamp',$this->tstamp, PDO::PARAM_INT);
//$this->stmt->bindparam(':crdate',$this->crdate);
$this->stmt->bindParam(':title', $this->title, PDO::PARAM_STR);
$this->stmt->bindParam(':date', $this->date, PDO::PARAM_INT);
$this->stmt->bindParam(':btime', $this->btime, PDO::PARAM_INT);
//$this->stmt->bindParam(':edate', $this->date);
$this->stmt->bindParam(':etime', $this->etime, PDO::PARAM_INT);
$this->stmt->bindParam(':fees', $this->fees, PDO::PARAM_STR);
$this->stmt->bindParam(':teaser', $this->teaser, PDO::PARAM_STR);
$this->stmt->bindparam(':location', $this->location, PDO::PARAM_STR);
$this->ImportEvent();
}
public function ImportEvent(){
$this->stmt->execute();
}
Ra3L

Kommentar