| PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Post your PHP questions here! |
 |

02-03-2010, 11:24
|
|
tinasharma18hh
Registrierter Benutzer
|
|
Registriert seit: Feb 2010
Beiträge: 36
|
|
UPDATE DB Anhänge
Hallo,
ich bekomme es leider nicht hin, dass dateianhänge upgedatet werden! Das inserten klappt jedoch und wird auch angezeigt. aber immer wenn ich die datei ändern will kommt die php meldung "keine anhänge vorhanden" (s.unten):wo liegt der wurm?wäre super dankbar über jede hilfe!
Bearbeiten.php
PHP-Code:
<form action="update.php" method="post" enctype="multipart/form-data" > <input type="hidden" name="id_w" value="<?php echo $_GET['id_w']?>"> Anhang hochladen: <input type="hidden" name="MAX_FILE_SIZE" value="2000000"> <?php echo $name ?> <input name="userfile" type="file" id="userfile"> <input type="submit" value="Ändern" name="upload" class="box" id="upload"> <input type="reset" value="Daten löschen"> </form>
Update.php
PHP-Code:
<?php include ("config/conn_db.php"); $id_w =$_POST["id_w"]; $upload =$_POST["upload"]; $name =$_POST["name"]; if(isset($_POST['upload']) && $_FILES['userfile']['size'] > 0) { $fileName = $_FILES['userfile']['name']; $tmpName = $_FILES['userfile']['tmp_name']; $fileSize = $_FILES['userfile']['size']; $fileType = $_FILES['userfile']['type']; $fp = fopen($tmpName, 'r'); $content = fread($fp, filesize($tmpName)); $content = addslashes($content); fclose($fp); if(!get_magic_quotes_gpc()) { $fileName = addslashes($fileName); } } $result = mysql_query ("UPDATE ww set name ='".$_POST['name']."', size ='".$_POST['size']."', type ='".$_POST['type']."', content ='".$_POST['content']."' WHERE id_w='".$_POST['id_w']."' and abteilung='Walzwerk' ",$db_link); $row = @mysql_fetch_array($result); mysql_close(); echo'<META HTTP-EQUIV=REFRESH CONTENT="2; URL=Ansehen.php">'; ?>
Ansehen.php
PHP-Code:
<? include "config/conn_db.php"; $result = mysql_query ("SELECT * FROM ww where abteilung='Walzwerk'",$db_link); while($row = mysql_fetch_array($result)){?> <?php if (strtolower($row['name'] != '')) echo ' <a href=download.php?id_w='.$row['id_w'].'"><u> Ja </u> <b>Anhänge:</b> <br>'.$row['name'].'</a>'; } else echo'<font style="color:black;font-size:12px">Keine Anhänge vorhanden!';?> <a href='bearbeiten.php?id_w=<?php echo $row['id_w']?>' onfocus="blur();"><img src="images/b_edit.png" alt="Ändern" border="0"></a>
Geändert von tinasharma18hh (02-03-2010 um 12:02 Uhr)
|

02-03-2010, 11:30
|
TobiaZ
 Moderator
|
|
Registriert seit: Jan 2001
Ort: MUC und MGL, Germany
Beiträge: 34.188
|
|
Hallo,
bitte korrigiere zunächst mal den Code. So ist es sehr schwer zu lesen.
Tipps zum Debuggen findest du zudem in unseren Regeln, danach solltest du uns schon ein bisschen mehr Infos liefern können.
Danke!
|

02-03-2010, 11:45
|
|
tinasharma18hh
Registrierter Benutzer
|
|
Registriert seit: Feb 2010
Beiträge: 36
|
|
Zitat:
Zitat von TobiaZ
Hallo,
bitte korrigiere zunächst mal den Code. So ist es sehr schwer zu lesen.
Tipps zum Debuggen findest du zudem in unseren Regeln, danach solltest du uns schon ein bisschen mehr Infos liefern können.
Danke!
|
habe es korrigiert...ist es jetzt leserlicher?
die formatierungsprobleme kapier ich nicht so ganz...kann mir trotzdem jdm helfen?
Geändert von AmicaNoctis (02-03-2010 um 11:50 Uhr)
Grund: Doppelpost
|

02-03-2010, 11:49
|
AmicaNoctis
 Moderatorin
|
|
Registriert seit: Jul 2009
Beiträge: 5.550
|
|
Hallo,
die können auch nicht in der DB landen, weil du irgendwelche nicht existenten POST-Felder in die DB schiebst, aber nichts was mit der Datei zu tun hat.
Gruß,
Amica
__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt? 
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke! 
|

02-03-2010, 11:50
|
TobiaZ
 Moderator
|
|
Registriert seit: Jan 2001
Ort: MUC und MGL, Germany
Beiträge: 34.188
|
|
Versuchs bitte noch mal. Was für einen Editor beenutzt du denn? Hast du die Formatierungen mal von Hand gelöscht? Wie ist aus Color - Size geworden?
Helfen können wir dir, sobald eine konkrete Problembeschreibung vorliegt.
|

02-03-2010, 11:55
|
|
tinasharma18hh
Registrierter Benutzer
|
|
Registriert seit: Feb 2010
Beiträge: 36
|
|
Zitat:
Zitat von TobiaZ
Versuchs bitte noch mal. Was für einen Editor beenutzt du denn? Hast du die Formatierungen mal von Hand gelöscht? Wie ist aus Color - Size geworden?
Helfen können wir dir, sobald eine konkrete Problembeschreibung vorliegt.
|
so jetzt hats geklappt mit der formatierung..kannst du mit sagen wo ich den fehler mache?thx
|

02-03-2010, 12:00
|
AmicaNoctis
 Moderatorin
|
|
Registriert seit: Jul 2009
Beiträge: 5.550
|
|
Zitat:
Zitat von tinasharma18hh
kannst du mit sagen wo ich den fehler mache?thx
|
Hab ich schon.
__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt? 
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke! 
|

02-03-2010, 12:03
|
|
tinasharma18hh
Registrierter Benutzer
|
|
Registriert seit: Feb 2010
Beiträge: 36
|
|
Zitat:
Zitat von AmicaNoctis
Hallo,
die können auch nicht in der DB landen, weil du irgendwelche nicht existenten POST-Felder in die DB schiebst, aber nichts was mit der Datei zu tun hat.
Gruß,
Amica
|
existieren die variablen nicht, da es einen datendatz mit anderen werten gibt?
|

02-03-2010, 12:05
|
|
tinasharma18hh
Registrierter Benutzer
|
|
Registriert seit: Feb 2010
Beiträge: 36
|
|
Zitat:
Zitat von AmicaNoctis
Hab ich schon.
|
ja aber bein inserten mach ichs genau so mit den variablen!
deswegen wundere ich michhh
|

02-03-2010, 12:08
|
AmicaNoctis
 Moderatorin
|
|
Registriert seit: Jul 2009
Beiträge: 5.550
|
|
Was du beim Insert machst, kann ich nicht wissen, aber in dem Skript kann es so nicht funktionieren. Du benutzt die falschen Variablen. Sieh es dir einfach an und frag dich, wo z. B. $_POST['content'] herkommen soll und warum du z. B. $content definierst, aber nie benutzt.
Dann solltest du diesen addslashes-Quatsch lassen und den Kontextwechsel richtig behandeln. addslashes bringt dir nämlich keine Sicherheitsvorteile.
__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt? 
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke! 
Geändert von AmicaNoctis (02-03-2010 um 12:10 Uhr)
|

02-03-2010, 13:40
|
|
tinasharma18hh
Registrierter Benutzer
|
|
Registriert seit: Feb 2010
Beiträge: 36
|
|
ok. hier ist der insert befehl und der fuzt mir den variablen! diesen kopier ich quasi und mache statt insert update..ich definiere ja nur mein $upload im POST..bitte helfe mit  im getting so confused
PHP-Code:
<?php
include ("config/conn_db.php");
$upload=$_POST["upload"]; if(isset($_POST['upload'])&&$_FILES['userfile']['size']>0) { $fileName= $_FILES['userfile']['name']; $tmpName= $_FILES['userfile']['tmp_name']; $fileSize= $_FILES['userfile']['size']; $fileType= $_FILES['userfile']['type']; $fp= fopen($tmpName,'r'); $content= fread($fp, filesize($tmpName)); $content= addslashes($content); fclose($fp); if(!get_magic_quotes_gpc()) { $fileName= addslashes($fileName); } } $eintrag= " INSERT INTO ww (name, size, type, content) VALUES ('$fileName', '$fileSize', '$fileType', '$content') ";
$eintragen= mysql_query($eintrag); mysql_close();
echo'<META HTTP-EQUIV=REFRESH CONTENT="2; URL=ansehen.php">';?>
|

02-03-2010, 13:43
|
AmicaNoctis
 Moderatorin
|
|
Registriert seit: Jul 2009
Beiträge: 5.550
|
|
Zitat:
Zitat von tinasharma18hh
ok. hier ist der insert befehl und der fuzt mir den variablen!
|
Tut er nicht! Der arbeitet mit $fileName, $fileSize, $fileType und $content. Der andere arbeitet mit irgendwelchen ausgedachten $_POST-Variablen.
Lies dir doch deinen Code endlich mal durch und sieh dir die Variablen an. Alle Tipps, die man für das Problem geben kann, wurden dir gegeben.
__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt? 
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke! 
|

02-03-2010, 14:01
|
|
tinasharma18hh
Registrierter Benutzer
|
|
Registriert seit: Feb 2010
Beiträge: 36
|
|
Zitat:
Zitat von AmicaNoctis
Tut er nicht! Der arbeitet mit $fileName, $fileSize, $fileType und $content. Der andere arbeitet mit irgendwelchen ausgedachten $_POST-Variablen.
Lies dir doch deinen Code endlich mal durch und sieh dir die Variablen an. Alle Tipps, die man für das Problem geben kann, wurden dir gegeben.
|
amica ich danke dir für deine tipps,aber um ehrlich zu sein, mache ich das selbe von den variablen her wie beim insert und es geht nicht mit dem update. jetz letze frage an dich: kannst du mir direkt sagen in welcher datei was genau stehen bzw nicht stehen soll oder ist das nicht in deinem ermessen mir die "lösung" zu sagen?! wenn nicht ist es auch ok, dann muss ich mal woanders fragen
|

02-03-2010, 14:18
|
AmicaNoctis
 Moderatorin
|
|
Registriert seit: Jul 2009
Beiträge: 5.550
|
|
Such mal in deinen Scripts einmal nach "INSERT" und einmal nach "UPDATE" und sieh dir an, mit welchen Variablen das Statement zusammengekloppt wird. Danach erklär mir nochmal, was daran genau so ist wie beim anderen
__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt? 
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke! 
|
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
|
| Themen-Optionen |
|
|
| Thema bewerten |
|
|
Forumregeln
|
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
|
PHP News
|