|
Vorheriges Thema: Nächstes Thema: |
Autor |
Nachricht |
rei-lopipopi Forumsteilnehmer
Anmeldungsdatum: 31.08.2006 Beiträge: 11
|
Verfasst am: 31.08.2006 13:21:33 Titel: variablen def. durch onclick? |
|
|
ahoi,
ich habe eine frage, auf die ihr mir vllt. eine antwort geben könnt:
kann man mit dem event-handler "onClick" auch Variablen setzen?
ich gebe mal einen auszug aus meinem quelltext an:
<form action="upload.php" method="POST" enctype="multipart/form-data" name="eingabe">
bordercolor="000000" align="center" width="300">
<input type="text" name="browse">
<input type="button" value="laden" onClick="$bla = this.form.browse.value">
</form>
also was ich erreichen will:
die variable $bla soll auf den wert gesetzt werden, welchen ich im input-feld eingebe.
geht das? kann man das so machen? oder wie ist die korrekte syntax bei onClick?
danke, für eure antworten!
schaui |
|
Nach oben |
|
|
admin Site Admin
Anmeldungsdatum: 16.01.2005 Beiträge: 323 Wohnort: Berlin
|
Verfasst am: 31.08.2006 17:07:12 Titel: |
|
|
variablen kannst du setzen (onclick="var a = '42'; ") - nur das was du da machst ist php ($bla) und das geht nicht. wie du ja weisst läuft php auf dem server - javascript aber auf dem clienten (browser) damit du also mit javascript eine php-variable verändern kannst musst du die seite zwangsläufig neu laden oder anderweitig daten an den server schicken ... |
|
Nach oben |
|
|
Sir Quicksand Häufiger Poster
Anmeldungsdatum: 19.01.2005 Beiträge: 304 Wohnort: Hannover
|
Verfasst am: 31.08.2006 21:37:44 Titel: |
|
|
Was soll das? Du hast doch den Wert im text Feld? :konfus: |
|
Nach oben |
|
|
rei-lopipopi Forumsteilnehmer
Anmeldungsdatum: 31.08.2006 Beiträge: 11
|
Verfasst am: 01.09.2006 06:36:09 Titel: |
|
|
ja, sehr richtig - ich habe den wert im textfeld.
aber ich will den wert, den ich in das textfeld eintrage (in meinem fall ein pfad zu einer datei) gleich als pfad in einem "LOAD DATA INFILE" verwenden.
man soll quasi mit diesem script eine csv-datei auswählen, dessen inhalt dann gleich in die DB geschrieben wird.
ich hatte mir das so gedacht, dass man dieses feld ausfüllt, dann per "onklick" die seite neulädt, durch (per GET) übergebenen variablen und dabei dann der "LOAD DATA INFILE" ausgeführt wird.
ich poste einfach mal den quelltext, vielleicht versteht ihr ja dann, was ich meine...
<?php
if (isset($_REQUEST["action"]))
{
if (($_REQUEST[action]) == "laden")
{
$query = "LOAD DATA LOCAL INFILE '$bla'";
$query .= " INTO TABLE `liste` FIELDS TERMINATED BY ';' ENCLOSED BY '"' ESCAPED BY '\\' LINES TERMINATED BY '\r\n'
}
}
?>
<html>
<head>
</head>
<body>
<table bgcolor="DFDFDF" border="0" bordercolor="000000" align="center" width="300">
<tr>
<td colspan="2" align="center"><h2 color="FF0000">T-Systems Business Services<h2></td>
</tr>
<tr>
<td colspan="2" align="center"><h4>Competence Center Desktop Solutions</h4></td>
</tr>
<tr>
<td colspan="2" align="left"><b>Bitte geben Sie hier den Pfad der Datei an:</b></td>
</tr>
</table>
<form action="upload.php" method="POST" enctype="multipart/form-data" name="eingabe">
<table bgcolor="DFDFDF" border="0" bordercolor="000000" align="center" width="300">
<tr>
<td align="center">
<input type="file" name="browse">
<input type="button" value="hochladen" onClick="var bla = 'this.form.browse.value'">
<input type="hidden" name="laden" onClick="window.open('upload.php?action=laden&pfad=$bla', '_self')">
</td>
</tr>
</table>
</form>
<?php
echo "<b>$bla</b>";
?>
</body>
</html>
btw: schonmal vielen dank, für die antworten!
schaui |
|
Nach oben |
|
|
rei-lopipopi Forumsteilnehmer
Anmeldungsdatum: 31.08.2006 Beiträge: 11
|
Verfasst am: 01.09.2006 08:02:30 Titel: |
|
|
ich hab den quelltext nochmals überarbeitet...
es geht allerdings immernoch nicht...
<?php
if (isset($_REQUEST["action"]))
{
if ((($_REQUEST[action]) == "laden") && (!empty($_REQUEST["pfad"])))
{
//$query = "LOAD DATA LOCAL INFILE '$_POST[browse]'";
//$query .= " INTO TABLE `materialliste` FIELDS TERMINATED BY ';' ENCLOSED BY '"'";
$query = "SELECT SUM(jahresvolumen_2006) FROM test.materialliste WHERE status = '3'";
echo "$query";
$result = mysql_query($query);
//$zeilen = mysql_affected_rows($result);
echo "jaui";
}
}
?>
<html>
<head>
</head>
<body>
<table bgcolor="DFDFDF" border="0" bordercolor="000000" align="center" width="300">
<tr>
<td colspan="2" align="center"><h2 color="FF0000">Honki<h2></td>
</tr>
<tr>
<td colspan="2" align="center"><h4>Honki-Tonki</h4></td>
</tr>
<tr>
<td colspan="2" align="left"><b>Bitte geben Sie hier den Pfad der Datei an:</b></td>
</tr>
</table>
<form action="upload.php" method="POST" enctype="multipart/form-data" name="eingabe">
<table bgcolor="DFDFDF" border="0" bordercolor="000000" align="center" width="300">
<tr>
<td align="center">
<input type="file" name="browse">
<input type="button" value="laden" onClick="window.open('upload.php?action=laden&pfad=<?php echo "$_POST[browse]"; ?>', '_self')">
</td>
</tr>
</table>
</form>
<?php
if ((($_REQUEST[action]) == "laden") && (!empty($_REQUEST["pfad"])))
{
$req = mysql_fetch_array($result);
echo "$req[0]";
}
?>
</body>
</html>
beim erneuten aufruf der seite wird der "$_POST[browse]"-Wert nicht mit übergeben - ich komme nicht weiter - HILFE!
schaui |
|
Nach oben |
|
|
admin Site Admin
Anmeldungsdatum: 16.01.2005 Beiträge: 323 Wohnort: Berlin
|
Verfasst am: 01.09.2006 10:04:21 Titel: |
|
|
das ist unsinn was du da mit dem fenster machst.
Code: |
<form ... target="uploadfenster" onsubmit="window.open('about:blank','uploadfenster','width=300,height=300')">
<input type="file" name="datei">
<input type="submit">
</form> |
1. du kannst den wert eines file-feldes nicht auslesen
2. der pfad bringt dir garnichts
3. selbst wenn es ginge den dateiinhalt eines file-feldes auszulesen wäre es äußerst schlecht diesen per GET-parameter an eine Seite zu übergeben (5 MB get-parameter ist nicht gerade die feine art) |
|
Nach oben |
|
|
rei-lopipopi Forumsteilnehmer
Anmeldungsdatum: 31.08.2006 Beiträge: 11
|
Verfasst am: 01.09.2006 10:26:43 Titel: |
|
|
ich hab's gelöst...
hier der quelltext:
<?php
if (isset($_REQUEST["action"]))
{
if ((($_REQUEST[action]) == "laden") && (!empty($_REQUEST["browse"])))
{
//$query = "LOAD DATA LOCAL INFILE '$_POST[browse]'";
//$query .= " INTO TABLE `materialliste` FIELDS TERMINATED BY ';' ENCLOSED BY '"'";
//echo "$query";
//$result = mysql_query($query);
//$zeilen = mysql_affected_rows($result);
echo "geklappt!";
}
}
?>
<html>
<head>
</head>
<body>
<table bgcolor="DFDFDF" border="0" bordercolor="000000" align="center" width="300">
<tr>
<td colspan="2" align="center"><h2 color="FF0000">Honki<h2></td>
</tr>
<tr>
<td colspan="2" align="center"><h4>Honki</h4></td>
</tr>
<tr>
<td colspan="2" align="left"><b>Bitte geben Sie hier den Pfad der Datei an:</b></td>
</tr>
<form action="upload.php?action=laden&pfad=<?php echo "$_POST[browse]"; ?>" method="POST" enctype="multipart/form-data" name="eingabe">
<tr>
<td align="center">
<input type="file" name="browse">
<input type="submit" name="bla" value="laden">
</td>
</tr>
</form>
</table>
<?php
if ((($_REQUEST[action]) == "laden") && (!empty($_REQUEST["pfad"])))
{
$req = mysql_fetch_array($result);
echo "$req[0]";
}
?>
</body>
</html>
aber danke für eure antworten!
schaui |
|
Nach oben |
|
|
|
|
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen.
|
|
|
|