Also ich versuch eine SQL Abfrage zu erzeugen und muss die felder plus ihre Werte angeben.Dafür bastel ich mir zwei strings.
Ich frag alle feldernamen ab und schreib sie auf den ersten string.
Dann gehts problem los... ich kann zwar den string mit den werten
erzeugen hab aber immer die sch* leerzeichen.
Hatte versucht alle Zeichen einzeln durch zugehen oder alles bis auf die leerzeichen raus zukopieren.
Ich hab einfach kein plan mehr
Ich frag alle feldernamen ab und schreib sie auf den ersten string.
Dann gehts problem los... ich kann zwar den string mit den werten
erzeugen hab aber immer die sch* leerzeichen.
Hatte versucht alle Zeichen einzeln durch zugehen oder alles bis auf die leerzeichen raus zukopieren.
Ich hab einfach kein plan mehr
PHP-Code:
if($einfuegen=="einfuegen")
{
//test DB auswahl
mysql_select_db("$txtDBname")
or die("Auswahl der Datenbank nicht möglich: " . mysql_error());
$query = "SELECT * FROM $txtTname"; //abfrage
//Variablendef.
$zielf_kom="";
$quellef_kom="";
//Tabellenfelder-Abfrage
$result = mysql_query($query)
or die("Hauptabf. fehlgeschlagen");
$fields = mysql_num_fields($result);//Sp-anzahl
//Strings erzeugen Für EintragAbfrage
$ver=$fields-1;//vergleichsvar
for ($s = 0; $s <=$fields-1;$s++)
{
$fname=mysql_field_name($result, $s);//feldname(quelle,index)
if($s<$ver) $zielf_kom.=$fname.",";//wenn letztes feld, kein komma
else $zielf_kom.=$fname;
if($s<$ver) $quellef_kom.="\ "."\"$".$fname."\ "."\","; // \"$BenutzerID\",\"$Name\"//wenn letztes feld
else $quellef_kom.="\ "."\$".$fname."\ "."\"";
}
//String bearbeitung
$leeranz = substr_count($quellef_kom, ' ');//leerzeichen anzahl
$stlaenge = strlen($quellef_kom);//laenge string
//$str = trim($quellef_kom);
//$quellef_kom = implode(" ",$bt);
//echo"$bt[0],$bt[1]";
$leeranz = substr_count($quellef_kom, ' ');
//Versuch 1. zeichenweise kopieren
$quellef_komt[$stlaenge]=$quellef_kom;
for($i=0;$i<$stlaenge;$i++)
{
if(0==strcmp($quellef_komt[$i], " "))
{
$split.=$quellef_komt[$i];//echo"$quellef_kom[$i]";
}
}
//Versuch 2. leerzeichen suchen und strings kopieren...
$gst=$quellef_kom;
for($i=1;$i<=$leeranz;$i++)
{
$fl=0;
$pos = strpos($gst, ' ');
if($pos!=0) {$st1= substr($gst,pos-1);$fl++;}
$stlaenge = strlen($gst);
if($pos!=$laenge) {$st2=substr($gst,$pos+1,$stlaenge);$fl=2;}
else echo"FEhler";
echo"Teil: $st1
Teil: $st2
";
if($fl==0)$gst=$st1.$st2;
else echo"Fehlercode: $fl
";
}
echo"Leerzeichen: $leeranz";
echo"FEldanz: $fields
";
echo"Feldern: $zielf_kom
";
//SQL Abfrage
$eintrag ="insert into $txtTname($zielf_kom)
values ($quellef_kom)";// BenutzerID,Name \"$BenutzerID\",\"$Name\"
$resID = mysql_query($eintrag);
$error= mysql_error();
echo $error;
if (!$resID) die ("
FEHLER IN DER ABFAGE ... Eintrag");
}
Kommentar