Array in DB schreiben

redback79

Erfahrenes Mitglied
Hallo erst mal, schon eine Weile her seit meinem letzten Post hier im Forum... dementsprechen aus der Übung bin ich dann auch gekommen... :-(

Hier erst mal der Code:

PHP:
<?php

$verbindung = mysql_pconnect( "localhost", "xxx", "xxx");

if (!$verbindung)
{
    echo "Keine Verbindung zur Datenbank";
    exit;
}

mysql_select_db("kservices");

//ARRAY IN DB SCHREIBEN
for($x=0;$x<sizeof($check);$x++){
$sqlkommando = "INSERT INTO userrights (username, projectname) VALUES ('$username', '$check[$x]')";
$sqlanfrage = mysql_query($sqlkommando);

}
?>


Die Daten im Array stammen aus einem Checkboxformular und werden richtig übernommen. Mit -echo $check[$x] . "<br>";- kann ich sie auflisten lassen, doch in die DB werden sie leider nicht geschrieben! :-(

Kann mir jemand weiterhelfen? Funktioniert das überhaupt was ich da versuche?

Vielen Dank im Voraus

redback79
 
Hallo,

leider ist nicht zu sehen, wie die Variablen ankommen.
Kannst du bitte das Formular noch hier posten und deine [phpf]phpversion[/phpf], danke.
 
PHP:
<?php echo"<form method='POST' action='setrights_user.php?username=$username'>"; ?>

<table cols="20,20,580" border="0" width="620" bgcolor="#E0E0E0">
  <tr>
    <td width="22"></td>
    <td width="21"></td>
    <td width="563">Projektname</td>
  </tr>

<?php
//PROJEKTE IN TABELLE AUSGEBEN
$verbindung = mysql_pconnect( "localhost", "xxx", "xxx");

if (!$verbindung)
{
    echo "Keine Verbindung zur Datenbank";
    exit;
}

mysql_select_db("kservices");
$sqlkommando = "SELECT * FROM project ORDER BY projectname ASC";
$sqlanfrage = mysql_query($sqlkommando);


while($daten = mysql_fetch_object($sqlanfrage)) {

echo"
  <tr>
    <td width='22'><input type='checkbox' name='check[]' value='$daten->projectname'></td>
    <td width='21'></td>
    <td width='563'>$daten->projectname</td>
  </tr>

";

}

?>
</table>

</form>


...hoffe das hilft weiter... ;-)

PHP VERSION 4 -sorry-
 
PHP:
$sqlkommando = "INSERT INTO userrights (username, projectname) VALUES ('".$username."', '".$check[$x]."')";

...so funktionierts! :-)


Zu deiner Bemerkung: Die Variable $username wird korrekt übergeben und zwar über die wohl simpelste Methode... (hab keine Session wo ich die Variabeln "aufbewahren" könnte)

PHP:
<?php echo"<form method='POST' action='setrights_user.php?username=$username'>"; ?>


VIELEN DANK trotzdem! ;-)
 
In Sachen SQL-Interpunktion, ok, darauf hatte ich nicht geachtet, sorry.

Aber auch dein 2. Ansatz mir die Herkunft von $username zu erklären schlägt fehl,
da zu deiner action-Weiterführung die Variable bereits gefüllt ist/sein muss. :p
 
Zurück