[PHP/MySQL] Upload

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Benutzeravatar
DasFragezeichen
Mitglied
Beiträge: 402
Registriert: 28.08.2005 19:51

Beitrag von DasFragezeichen »

Hm, ja und was heisst das dann ? :roll:
Benutzeravatar
DasFragezeichen
Mitglied
Beiträge: 402
Registriert: 28.08.2005 19:51

Beitrag von DasFragezeichen »

So, dann muss ich den Thread mal bumpen nach 23 : 57 :D

Die 3 Min. machen nichts aus oder ? xD
fanrpg
Mitglied
Beiträge: 2909
Registriert: 13.12.2004 22:41

Beitrag von fanrpg »

www.php.net

Wir sagen dir doch nicht alles vor... :roll:

www.schattenbaum.net/php hat auch so ne Lektion
Benutzeravatar
DasFragezeichen
Mitglied
Beiträge: 402
Registriert: 28.08.2005 19:51

Beitrag von DasFragezeichen »

Ne, ich frage ja nicht nach "ALLEM" sondern nur nach der Sache mit der Ausgabe : Vorher war es X Jetzt ist es X ...
mristau2k5
Mitglied
Beiträge: 140
Registriert: 10.05.2005 02:35
Wohnort: Filderstadt

Beitrag von mristau2k5 »

also ich hab da jetzt mal ein kleines Script geschrieben, das anhand einer ID den Datensatz ausliest, um 1 erhöht und wieder in die Datenbank einträgt, alles funktioniert einwandfrei bei mir.

Code: Alles auswählen

/*
  die Konstanten sind recht praktisch zu verwenden, einfach die richtigen Daten eingeben
  wenn die Daten in mehreren Dateien gebraucht werden, in eine config.php auslagern

  ich habe die Tabelle mit
  CREATE TABLE `test` (`id` INT NOT NULL, `url` INT NOT NULL);
  erstellt, man könnte id auf AUTO_INCREMENT setzen, oder ähnlich

  und Beispieldatensätze

  INSERT INTO `test` ( `id` , `url` ) VALUES ('1', '4'), ('2', '6');
*/

define('DB_HOST', 'localhost');
define('DB_USER', '');
define('DB_PASS', '');
define('DB_NAME', 'test');
define('TABLE_NAME', 'test');

// Tabellenstruktur zum Testen 2 Felder id und url

$feld1 = "id";
$feld2 = "url";
$id = 1;

$verbindung = mysql_connect(DB_HOST, DB_USER, DB_PASS) or die("Verbindung konnte nicht hergestellt werden");

mysql_select_db(DB_NAME, $verbindung);

$sql = "SELECT * FROM ".TABLE_NAME." WHERE ".$feld1."=".$id;

$result = mysql_query($sql, $verbindung) or die ("SQL-Befehl ".$sql." konnte nicht ausgeführt werden");

if ($row = mysql_fetch_assoc($result))
{
  $zahl = $row[$feld2];
}

/* mit mysql_fetch_object

if ($row = mysql_fetch_object($result))
{
  $zahl = $row->$feld2;
}

*/

echo "aktueller Wert: ".$zahl."<br>\n";
$zahl++;
echo "neuer Wert: ".$zahl."<br>\n";

$sql = "UPDATE ".TABLE_NAME." SET ".$feld2."=".$zahl." WHERE ".$feld1."=".$id;

mysql_query($sql, $verbindung) or die ("SQL-Befehl ".$sql." konnte nicht ausgeführt werden");

mysql_close();
ich hab Variablen verwendet, die können je nachdem wie mans möchte ersetzt werden.
Benutzeravatar
DasFragezeichen
Mitglied
Beiträge: 402
Registriert: 28.08.2005 19:51

Beitrag von DasFragezeichen »

Thx, das klappt wunderbar :D

Hm, irgendwie werde ich (hoffentlich) den Rest hinbekommen wenn nicht (bestimmt ...) werde ich dann bald schon wieder kommen xD

Danke, Danke! :P
Benutzeravatar
DasFragezeichen
Mitglied
Beiträge: 402
Registriert: 28.08.2005 19:51

Beitrag von DasFragezeichen »

Hm, also ... ginge das ? :

Code: Alles auswählen


$zahl = "Irgendwas";

  if(eregi("(jpg|gif)$",$name))
  {
    $ftype == "image/gif"
    {
      $fname = $zahl.gif
    }
    else
    {
    $fname = $zahl.jpg
    }
ganz einfach so das überprüft wird ob es gif oder jpg ist und dann zu $zahl.[Dateityp] umbenennt ? Geht das ? Wenn nein ... Was soll ich dann machen ? xD
Benutzeravatar
Pyramide
Ehrenadmin
Beiträge: 12734
Registriert: 19.04.2001 02:00
Wohnort: Meschede

Beitrag von Pyramide »

DasFragezeichen hat geschrieben:Geht das ?
Try it and see...
DasFragezeichen hat geschrieben:Wenn nein ... Was soll ich dann machen ?
Das, was dir schon öfter empfohlen wurde - ein PHP-Tutorial durchlesen. Von nichts kommt schließlich nichts und wenn du hier jedesmal bei den kleinsten Problemen fragst bringt das auch nicht viel, wenn du die Grundlagen nicht verstanden hast.
KB:knigge
Benutzeravatar
DasFragezeichen
Mitglied
Beiträge: 402
Registriert: 28.08.2005 19:51

Beitrag von DasFragezeichen »

<form action="upload.php" method="post" enctype="multipart/form-data" name="upload">
<input type="file" name="file"><input type="submit" name="submit" value="Upload">
</form>

<?php

$max_byte_size = 10240000;
$allowed_types = "(jpg|jpeg|gif|bmp|png|tif|tiff|swf|zip|rar)";

if($_POST["submit"] == "Upload") {

if(is_uploaded_file($_FILES["file"]["tmp_name"])) {

if(preg_match("/\." . $allowed_types . "$/i", $_FILES["file"]["name"])) {

if($_FILES["file"]["size"] <= $max_byte_size) {

rename($_FILES["file"]["tmp_name"], "/srv/www/htdocs/web0/html/upload/blabla.jpg"); //hier...

if(copy($_FILES["file"]["tmp_name"], $_FILES["file"]["name"])) {

echo "Die Datei : " . $_FILES["file"]["name"] . " wurde erfolgreich hochgeladen!<br>";
echo "Datei : <a href=\"" . $_FILES["file"]["name"] . "\">" . $_FILES["file"]["name"] . "</a>";

}
else {

echo "Datei konnte nicht hochgeladen werden!";

}

}
else {

echo "Die Datei darf nur eine Größe von 10 Megabyte besitzen.";

}

}
else {

echo "Die Datei besitzt keine ungültige Endung.";

}

}
else {

echo "Keine Datei angegeben.";

}

}
else {

echo "Maxsize " . $max_byte_size . " ";

}

?>
Hm, nach meinen Erkentnissen sollte die Datei dann blabla.jpg heißen und in den Ordner : my-domain-name.de/upload/ hochgeladen werden ... Aber, das ganze klappt nicht ... Dann kommt eine Fehlermeldung und der Dateiname bleibt :-? Was kann ich da machen ? xD
Benutzeravatar
DasFragezeichen
Mitglied
Beiträge: 402
Registriert: 28.08.2005 19:51

Beitrag von DasFragezeichen »

Es hat mitleerweile alles vollständig geklappt :D

Jetzt werdet ihr bezüglich des Upload's keine Meldungen mehr bekommen :D

Danke für alles,
Das-Fragezeichen
Antworten

Zurück zu „Coding & Technik“