hallo =)
ich bin das erste mal hier und suche etwas hilfe =)
sorry fuer manch ueberlaenge =)
ich hab hier etwas zusammen gestellt in kurzfassung:
diese abfrage checkt ob daten in der tabele vorhanden sind und
wenn keine daten enthalten sind gibt das query nomalerweise
einen bool(false) aus, das heisst meine weiteren scripte wie zB
ein script der automatisch aus den vorhandenen feldern in
der tabele -> inputs erstellt falls mal die tabele mit ferldern
erweitert werden sollte "anders gesagt"(wenn ich ein feld mehr in die tabele
einfuege, wird automatisch im admin bereich zB ein input mehr erstellt)
habe das problem mit dem bool(false) in der query mit "mysql_field_name()"
umgangen, danach um die daten vernuenftig verwenden zu
koennen noch ein "array_flip()" und
das laeuft alles soweit gut,
jetzt kommt leider der part wo ich nicht weiter weiss da ich leider
nicht so erfahren bin:
der script muss seine arrays printen damit ich mit denen was anfangen kann weil
ausserhalb while() function bekommeich mit $rowenta nu einen wert raus also printe ich in der while() noch drin,
hier ist ein array und alles soweit gut abe rich denke das dort durch das printen der fehler
"You have an error in your SQL syntax;
check the manual that corresponds to your MySQL server version for the right syntax to use near '1' at line 1"
sich ergibt, kann das sein ?
oder wie koennte ich jetzt anstatt zu printen den wert "$rowenta" von der zeile:
sammt seinen arrays in die zeile:
bekommen falls es keinen anderen weg gibt als meine hier zusammen gestellte methode?
habt ihr eventuell einen besseren tipp ?
code:
thx und seit net so hart mit commis ich bin nur ein maedchen ;P
ps: der script ist ausfuehr fertig es muss nur falls jemand ihn testen will SQL login daten aendern und diesen SQL befehl ausfuehren
pps: es lesen anscheined auch viele leute hier die noch nicht so
gut in SQL und PHP sind, also deswegen die hilfen,
ist nur gut gemeint falls der script bei jemanden verwendung finden sollte ;P
ich bin das erste mal hier und suche etwas hilfe =)
sorry fuer manch ueberlaenge =)
ich hab hier etwas zusammen gestellt in kurzfassung:
diese abfrage checkt ob daten in der tabele vorhanden sind und
wenn keine daten enthalten sind gibt das query nomalerweise
einen bool(false) aus, das heisst meine weiteren scripte wie zB
ein script der automatisch aus den vorhandenen feldern in
der tabele -> inputs erstellt falls mal die tabele mit ferldern
erweitert werden sollte "anders gesagt"(wenn ich ein feld mehr in die tabele
einfuege, wird automatisch im admin bereich zB ein input mehr erstellt)
habe das problem mit dem bool(false) in der query mit "mysql_field_name()"
umgangen, danach um die daten vernuenftig verwenden zu
koennen noch ein "array_flip()" und
das laeuft alles soweit gut,
jetzt kommt leider der part wo ich nicht weiter weiss da ich leider
nicht so erfahren bin:
der script muss seine arrays printen damit ich mit denen was anfangen kann weil
ausserhalb while() function bekommeich mit $rowenta nu einen wert raus also printe ich in der while() noch drin,
hier ist ein array und alles soweit gut abe rich denke das dort durch das printen der fehler
"You have an error in your SQL syntax;
check the manual that corresponds to your MySQL server version for the right syntax to use near '1' at line 1"
sich ergibt, kann das sein ?
oder wie koennte ich jetzt anstatt zu printen den wert "$rowenta" von der zeile:
PHP-Code:
print("$rowenta"); // wurm drin ??
PHP-Code:
$nol_b = print_this();
habt ihr eventuell einen besseren tipp ?
code:
PHP-Code:
<?
if ((isset($_POST["passed"])) && ($_POST["passed"] == "true"))
{
$hostname_localhost = "host";
$database_localhost = "db";
$username_localhost = "user";
$password_localhost = "pw";
$localhost = mysql_pconnect($hostname_localhost, $username_localhost, $password_localhost) or
trigger_error(mysql_error(),E_USER_ERROR);
function print_this()
{
global $hostname_localhost, $database_localhost, $username_localhost, $password_localhost, $localhost;
mysql_select_db($database_localhost, $localhost);
$query_CONEX_ADD = "SELECT * FROM test_links2";
$CONEX_ADD = mysql_query($query_CONEX_ADD, $localhost) or die(mysql_error());
$row_CONEX_ADD = mysql_fetch_assoc($CONEX_ADD);
$totalRows_CONEX_ADD = mysql_num_rows($CONEX_ADD);
$a0 = 0;
while ($a0 <= $a0)
{
if (@mysql_field_name($CONEX_ADD,$a0)==false)
// checkt ob daten enthalten sind, wenn nicht (also FALSE) dann Stop
{
break;
}
$b = array(mysql_field_name($CONEX_ADD,$a0)); // field_name als array reinholen
$b = array_flip($b); // schlüssel und werte des arrays vertauschen
#var_dump($b);
foreach($b as $k => $v) // arrays zuweisen
{
$v2 = $_POST[$k]; // "Sie haben Post" ^^ inputs nach $_POST checken
$aa = "`$k` = '$v2'"; // Feldnamen und POSTwert zuweisen
}
#var_dump(@mysql_field_name($CONEX_ADD,$a0+1));
if (@mysql_field_name($CONEX_ADD,$a0+1)!=false) // checkt ob mehrere Felder vorhanden sind -
{
$ab = ", "; // wenn JA dann Komma und SPACE zuweisen
}
if (@mysql_field_name($CONEX_ADD,$a0+1)!=false) // checkt ob mehrere Felder vorhanden sind -
{
$rowenta = $aa.$ab; // wenn JA und nicht letztes Feld dann Pro Feld "NAME=WERT, " erstellen -
}
else // sonst (falls letztes Feld)
{
$rowenta = $aa; // das letze Komma automatisch NICHT mit einfügen
}
#var_dump($rowenta);
print("$rowenta"); // wurm drin ??
$a0++;
}
}
// zu Test Zwecken ab hier komentieren
$nol_a = print("INSERT INTO `test_links2` SET ");
$nol_b = print_this();
$nol = $nol_a.$nol_b;
// bis hier
// zum testen
#$nol = "INSERT INTO `test_links2` SET `feld_1` = '555', `feld_2` = '2000'";
mysql_select_db($database_localhost, $localhost);
$Result1 = mysql_query($nol, $localhost) or die(mysql_error());
#var_dump($nol);
#print_r($nol);
}
// !inportant; Fehler nur wo genau ?? = You have an error in your SQL syntax;
// check the manual that corresponds to your MySQL server version for the right syntax to use near '1' at line 1
?>
<form name="form1" method="post" action="a.php">
<input type="text" name="feld_1">
<br>
<br>
<input type="text" name="feld_2">
<br>
<br>
<input type="hidden" name="passed" value="true">
<input type="submit" name="Submit" value="Senden">
<br>
</form>
ps: der script ist ausfuehr fertig es muss nur falls jemand ihn testen will SQL login daten aendern und diesen SQL befehl ausfuehren
PHP-Code:
CREATE TABLE `test_links2` (
`id` INT( 11 ) NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`feld_1` VARCHAR( 255 ) NULL ,
`feld_2` VARCHAR( 255 ) NULL
) ENGINE = MYISAM ;
gut in SQL und PHP sind, also deswegen die hilfen,
ist nur gut gemeint falls der script bei jemanden verwendung finden sollte ;P
Kommentar