mediengestalter.info
FAQ :: Mitgliederliste :: MGi Team

Willkommen auf dem Portal für Mediengestalter

Aktuelles Datum und Uhrzeit: Do 28.03.2024 20:11 Benutzername: Passwort: Auto-Login

Thema: i++ funktioniert nicht? vom 17.03.2007


Neues Thema eröffnen   Neue Antwort erstellen MGi Foren-Übersicht -> Programmierung -> i++ funktioniert nicht?
Autor Nachricht
Smooth-Graphics
Threadersteller

Dabei seit: 22.05.2006
Ort: -
Alter: -
Geschlecht: Männlich
Verfasst Sa 17.03.2007 10:39
Titel

i++ funktioniert nicht?

Antworten mit Zitat Zum Seitenanfang

Hallo, ich hab mir folgende Funktion geschrieben:

Code:
function filename()         // Funktion Filename erzeugen per Zufallszahl zwischen 0001 und 9999
   {
    $presec="street_";          // preordered attribute of filename
         $i=1;                             // set i=1 as default value
    $i++;                            // increase filename number
    $fname = $presec.$i.".jpg";       // create complete filename ('.jpg' attribute added)
   }
   $filename = filename();


Das ganze soll dann einen Bild-Namen ergeben: "street_1051.jpg" oder ähnlich.
Eingebaut in einem Uploadformular...

Hier der Code vom verschieben:
Code:
if(isset($_FILES['thefile']['tmp_name']) && $_FILES['thefile']['type']=="image/jpeg"){
     move_uploaded_file($_FILES['thefile']['tmp_name'],"http://www.rc-kaufbeuren.de/Photo/section/$section/$filename");


Könnt ihr mir helfen?

Danke!
VLG Smooth


Zuletzt bearbeitet von Smooth-Graphics am Sa 17.03.2007 10:46, insgesamt 2-mal bearbeitet
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
Bonestruca

Dabei seit: 24.06.2002
Ort: S // KÜN
Alter: 37
Geschlecht: Männlich
Verfasst Sa 17.03.2007 10:44
Titel

Antworten mit Zitat Zum Seitenanfang

wenn das mit dem i++ nicht funktioniert, liegts wohl daran, dass das script zwar weiß, dass es i um 1 erhöhen soll, jedoch nicht, bei welcher zahl es anfangen soll.

mach halt mal $i=1; an den anfang, das sollte genügen.
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
Anzeige
Anzeige
Smooth-Graphics
Threadersteller

Dabei seit: 22.05.2006
Ort: -
Alter: -
Geschlecht: Männlich
Verfasst Sa 17.03.2007 10:49
Titel

Antworten mit Zitat Zum Seitenanfang

sorry, hats irgendwie beim code kopieren gelöscht... daran liegt es nicht!?
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
Benutzer 28377
Account gelöscht


Ort: -

Verfasst Sa 17.03.2007 12:04
Titel

Antworten mit Zitat Zum Seitenanfang

Also das $i++ in der Funktion ist eigentlich nutzlos.
Da bei jedem Aufruf der Funktion $i wieder auf 1 geschreiben wird Lächel

Das würde noch so halbwegs Sinn ergeben:
Code:

$i = 0;
function filename() {
   global $i;
    $presec="street_";
    $i++;
    $fname = $presec.$i.".jpg";
   }
   $filename = filename();
 
SURE612

Dabei seit: 02.12.2005
Ort: Bärlin / CB
Alter: -
Geschlecht: Männlich
Verfasst Sa 17.03.2007 13:20
Titel

Antworten mit Zitat Zum Seitenanfang

ja das $i is total quatsch,

aber hättest auch mal schreiben sollen was nicht funzt...


edit: ahh - threadtitel *balla balla*
dann wars das wohl


Zuletzt bearbeitet von SURE612 am Sa 17.03.2007 13:21, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
Smooth-Graphics
Threadersteller

Dabei seit: 22.05.2006
Ort: -
Alter: -
Geschlecht: Männlich
Verfasst Sa 17.03.2007 14:30
Titel

Antworten mit Zitat Zum Seitenanfang

Okay, ich habs jetzt! Vielen Dank!

Fertig:
Code:
// create function filename();
   $i = 0;
   function filename()                         
   {
    global $i;
    $presec = $section."_";                     // preordered attribute of filename
    $i++;                                       // increase filename number
    $fname = $presec.$i.".jpg";                 // create complete filename ('.jpg' attribute added)
    return $fname;
   }
   $filename = filename();
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
schachbrett

Dabei seit: 11.10.2006
Ort: Köln
Alter: -
Geschlecht: Männlich
Verfasst Sa 17.03.2007 14:44
Titel

Antworten mit Zitat Zum Seitenanfang

Nur ein kleiner Tip - sei mal besser Vorsichtig mit 'nem globalen $i.

Als statische Variable wird es kompakter + weniger Fehleranfaellig:

Code:
function foo() {
  static $i = 100;
 
  echo $i++ . "<br />";
}

foo();
foo();
  View user's profile Private Nachricht senden
pRiMUS

Dabei seit: 09.09.2003
Ort: Vienna
Alter: 48
Geschlecht: Männlich
Verfasst Sa 17.03.2007 15:01
Titel

Antworten mit Zitat Zum Seitenanfang

man könnte der funktion die variable auch einfach übergeben.

Code:
function foo($i = 1)
{
 return $i;
}

for ($i = 0; $i <= 100; $i++)
  echo foo($i) ."\n";
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
 
Ähnliche Themen wie Funktioniert das mit ADOdb
wie funktioniert so ein muster?
Wie funktioniert SEO (Grundsätze)
Wie funktioniert Lightroom?
get URL () funktioniert nicht
Codepen - wie funktioniert's?
Neues Thema eröffnen   Neue Antwort erstellen
MGi Foren-Übersicht -> Programmierung


Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst an Umfragen in diesem Forum nicht mitmachen.