[PHP] preg_match

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.
Antworten
Benutzeravatar
DasFragezeichen
Mitglied
Beiträge: 402
Registriert: 28.08.2005 19:51

[PHP] preg_match

Beitrag von DasFragezeichen »

Hier mal ein Auszug aus meinem Script :
$laf = ("$newzahl.");

$lol = ("PNG");

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



if(copy($_FILES["file"]["tmp_name"], $laf.PNG)) {
print ("<a href='http://loaclhost/$newzahl.PNG'>$newzahl.PNG</a>");
}
Wäre ja schön wenn es klappen würde tut es aber nicht :-?

Der rote Bereich muss wohl der Fehler sein IMO ... Denn vorher klappte es noch ... :-?

Parse error: parse error, unexpected T_CONSTANT_ENCAPSED_STRING in /myserver/mypfad/etc./upload.php on line 66
Benutzeravatar
FatFreddy
Mitglied
Beiträge: 1937
Registriert: 25.07.2004 15:52
Kontaktdaten:

Beitrag von FatFreddy »

Wie wäre es mit:
... preg_match(...
FatFreddy
Watch out where the huskies go, don't you eat the yellow snow...
Mehr dazu im Reiseforum InselTalk.de.
Tupperdosensucher schauen ins Geocachingforum.
Benutzeravatar
DasFragezeichen
Mitglied
Beiträge: 402
Registriert: 28.08.2005 19:51

Beitrag von DasFragezeichen »

Hoffe der Code ist nicht zu groß aber das ganze jetzt als .txt zu speichern ... :-?

Code: Alles auswählen

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 

"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> 
</head>
<body>

<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> 

</body>
</html>

<?php

$max_byte_size = 1024000;
$allowed_types = "(jpg|jpeg|gif|bmp|png|tif|tiff|swf|zip|ra
r)";


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) {



define('DB_HOST', 'localhost');
define('DB_USER', 'web0');
define('DB_PASS', 'mypass');
define('DB_NAME', 'usr_web40_0');
define('TABLE_NAME', 'tabelle'); 

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

$verbindung = mysql_connect(DB_HOST, DB_USER, DB_PASS) or die("Kritischer Fehler!<br>Bitte informieren Sie den 

<a href='mailto:mail@mail.com'>Systemadministrator</a>"); 

mysql_select_db(DB_NAME, $verbindung); 

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


$result = mysql_query($sql, $verbindung) or die ("Kritischer Fehler!<br>Bitte informieren Sie den 

<a href='mailto:mail@mail.com'>Systemadministrator</a>"); 

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

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

$zahl++;
$newzahl = (md5 ($zahl));
$laf = ("$newzahl.");

$lol = "(PNG)";

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


if(copy($_FILES["file"]["tmp_name"], $laf.PNG)) {
   print ("<a href='http://localhost/$newzahl.PNG'>$newzahl.PNG</a>");
}


$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();


}
else {

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

}

}
else {

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

}

}
else {

echo "Keine Datei angegeben.";

}

}
else {

echo "Maxsize überschritten";

}


?> 

Hm, der Server sagt :
Parse error: parse error, unexpected $ in /srv/www/htdocs/web0/html/upload/upload.php on line 112
Damit kann ich aber nichts wircklich anfangen >_<
Benutzeravatar
witzigerkiller
Gesperrt
Beiträge: 878
Registriert: 05.02.2005 13:27
Wohnort: Sonthofen

Beitrag von witzigerkiller »

also zeile 112 ist:

Code: Alles auswählen

echo "Maxsize überschritten"; 

Aber da ich da kein fehler sehe, meine ich das eine fehlt, weil ich ab und zu mal die meldung
$ end
bekomme, deshalb setz mal eine am schluss mehr
Benutzeravatar
DasFragezeichen
Mitglied
Beiträge: 402
Registriert: 28.08.2005 19:51

Beitrag von DasFragezeichen »

Hm, ja das musste es gewesen sein :o

Jetzt klappt das Script endlich nach sovielen Jahrtausenden doch :o

Danke ^^
Benutzeravatar
witzigerkiller
Gesperrt
Beiträge: 878
Registriert: 05.02.2005 13:27
Wohnort: Sonthofen

Beitrag von witzigerkiller »

bitte bitte
Antworten

Zurück zu „Coding & Technik“