• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

upload_max_filesize

Schlender

New member
hy leute,

ich hab eigentlich noch nie probleme mit mysql gehabt, aber jetzt hab ich mir einen dynamic cloud server bei 1&1 zugelegt, damit meine Datenbank-Arbeiten schneller von statten gehn, jetzt habe ich aber im phpmyadmin festgestellt, dass ich nur max 2MB uploaden kann. Wollte dann in der php.ini den upload_max_filesize wert erhöhen, aber musste leider feststellen, dass ich keine php.ini habe. Was kann ich da machen?
 
hab mir jetzt selbst eine php.ini in den cgi-bin ordner gelegt, server neu gestartet, aber hat sich nichts geändert :(
 
So wie ich das lese, ist das ja nur für mich, also für den Admin uploadbar richtig?
Hab aber ein Webinterface, für unsere Mitarbeiter wo ständig uploads getätigt werden.
Kann ich nicht die php.ini manipulieren?
 
Schonmal ein guter hinweis:
PHP:
echo ini_get('upload_max_filesize').'<br />';
ini_set('upload_max_filesize', 10);
echo ini_get('upload_max_filesize');
kommt aber leider dennoch
HTML:
2M
2M
raus :(
 
PHP:
echo ini_get('upload_max_filesize').'<br />';
ini_set('upload_max_filesize', 10485760);
echo ini_get('upload_max_filesize');

bleibt dennoch bei 2M
 
bleibt dennoch bei 2M
Laut 1&1 Webseite hast Du vollen Root-Zugriff auf den Server. Log Dich dort ein und ändere die globale php.ini, starte den Apachen neu und dann sollte es passen.
Außerdem muss eine lokale php.ini in jeden Ordner kopiert werden, in dem die Einstellungen wirksam sein sollen (laut meinem Link oben) - ob die FAQ-Antwort auch für Dynamic Cloud Server gilt weiß ich nicht, damit hatte ich bislang noch nichts zu tun. Da aber diese "Dynamic Cloud" keine wirkliche Cloud darstellt, sondern lediglich ein virtueller Server mit variabler, bzw. für den Kunden zugänglicher Ressourcenzuteilung, dürfte sich der Server und die Software darauf identisch verhalten, wie bei einem normalen vServer.
 
richtig hab ich, aber dort befindet sich in einem ordner eine solche php.ini, auch wenn ich eine entsprechende Datei in die Ordner lade und den Server neustarte, passiert nix.
 
vielleicht ist der Apache einfach nicht so konfiguriert, dass er sich diese Dateien anschaut
 
und wie bekomm ich ihn dazu, kann ich das in der phpinfo() sehn ob er das macht? Oder warum er meine ini_set s nicht annimmt?
 
du sollst die php.ini suchen und in einem Editor öffnen um Sie zu bearbeiten ;-), das macht der Befehl ganz von selbst (dauert aber ne Weile wenn du auf der ganzen Platte suchen lässt)

was hast du eigentlich für ein Betriebssystem? und ich will dir nicht zu nahe treten, aber meinst du wirklich, dass du in der Lage bist einen root/vServer/cloudServer selbst zu administrieren?!
 
was soll das sein?
Ein Shellskript, welches Dich alle php.ini Dateien editieren läßt. Dazu musst Du Dich aber auf dem Server per ssh einloggen (Stichwort: putty [für Windowsuser]).
Mein Tipp: die zentrale php.ini liegt im Verzeichnis /etc/php5/apache2/

Deiner Frage nach zu urteilen, könnte man allerdings vermuten, dass Du mit der Serveradministration nicht so viel am Hut hast. [edit]@Bieber *argl* Fenster zu lange auf :) [/edit]
 
ok da komm ich irgendwie nicht weiter!

Kann ich an meinem uploadscript denn was machen, dass der nicht die kompletten daten hochläd, sondern jeden datensatz einzen, dann würde ich doch immer weit unter 2 MB sein oder?

PHP:
<?php
if (array_key_exists("datei", $_FILES) && preg_match("/\\.csv$/", $_FILES['datei']['name'])){
	$file		= fopen($_FILES['datei']['tmp_name'], "r");
	$query = "INSERT INTO `ava_kunden_$data_nr` (`kundennr`, `anrede`, `vname`, `nname`, `str`, `plz`, `ort`, `tel`, `gebdat`, `kontinh`, `bank`, `blz`, `kontnr`, `agent_cc`, `agent_qc`, `dat_erf`, `dat_bes`, `dat_ver`, `abo`, `passw`, `datensatz`) VALUES ";
	while($line = fgets($file)){
		$line = preg_replace("/\\r?\\n$/", "", $line);
		$eintraege = explode(";", $line);
		if (count($eintraege) != 20) continue;
		else {
			for ($j = 0; $j < 20; $j++){
				$eintraege[$j] 	= "'" . mysql_real_escape_string($eintraege[$j]) . "'";
			}
			$eintraege[20] 	= "'".$data_nr."'";
			$res = mysql_query($query . "(" . implode(", ", $eintraege) . ")");
			if (!$res){
				die("Die Abfrage \"" . $query . "(" . implode(", ", $eintraege) . ")" . "\" konnte nicht ausgeführt werden: " . mysql_error() . " (Fehlernr.: " . mysql_errno() . ")");
			}
		}
	}
}
?>
 
Kann ich an meinem uploadscript denn was machen, dass der nicht die kompletten daten hochläd, sondern jeden datensatz einzen, dann würde ich doch immer weit unter 2 MB sein oder?
Ein einfaches "split -l 10000 dateiname.csv" dürfte ausreichen, um die Datei vor dem Upload entsprechend aufzuteilen. Gfs. kann man mit der Anzahl der Zeilen noch spielen - hängt ja schließlich auch von der mittleren Länge der Zeilen ab.
 
Zuletzt bearbeitet:
Zurück
Oben