Anstoss Coaching Zone Forum

Etwas anders, und wir bereuen keinen Liter
Aktuelle Zeit: Samstag 17. November 2018, 18:10

Alle Zeiten sind UTC+02:00




Ein neues Thema erstellen  Auf das Thema antworten  [ 104 Beiträge ]  Gehe zu Seite Vorherige 1 2 3
Autor Nachricht
 Betreff des Beitrags: Re: Informatikgedönse
BeitragVerfasst: Dienstag 30. November 2010, 19:59 
Offline
ACZ Metusalem
Benutzeravatar

Registriert: Dienstag 1. Januar 2002, 02:00
Beiträge: 17540
Wohnort: Heidelberger Hauptquatier
machts eigentlich sinnd parallel das programmieren in linux zu lernen? hab jetzt ein paar mal gehört das bestimmte sachen die in linux funktionieren, das unter windows nicht tun.

ich mein, nicht das ich jetzt mit dem reinen c++ programmieren unter windows nicht schon genügend ausgelastet wäre :D

_________________
Bild


Nach oben
   
 Betreff des Beitrags: Re: Informatikgedönse
BeitragVerfasst: Freitag 3. Dezember 2010, 21:07 
Offline
Weltfußballer
Weltfußballer
Benutzeravatar

Registriert: Montag 2. September 2002, 07:56
Beiträge: 1218
Lerne es lieber erstmal unter Windows ODER unter Linux. Reines C++ funktioniert meist auch unter beiden Betriebssystemen.

_________________
Galileio ist tot
Einstein ist tot
und ich habe auch schon Husten


Nach oben
   
 Betreff des Beitrags: Re: Informatikgedönse
BeitragVerfasst: Mittwoch 8. Dezember 2010, 15:33 
Offline
ACZ Metusalem
Benutzeravatar

Registriert: Dienstag 1. Januar 2002, 02:00
Beiträge: 17540
Wohnort: Heidelberger Hauptquatier
Argh, ich krieh die Krätze. Warum gibt er denn alles außer dem attribut1Wert aus? (also quasi Modellname)
Code:
#include <iostream>
using namespace std;
#include <fstream>
#include <string>
#include "token11.h"

ClToken::ClToken()
{
tagName=NULL;
attribut1Name=NULL;
attribut1Wert=NULL;
attribut2Name=NULL;
attribut2Wert=NULL;
}

int  ClToken::getToken(
ifstream              &datei)
{
int zaehler;
char zeichen;
char puffer[100];
int attnamecount=0, attvaluecount=0;

if (tagName!=NULL)
   {
   delete tagName;
   tagName=NULL;
   }
if (attribut1Name!=NULL)
   {
   delete attribut1Name;
   attribut1Name=NULL;
   }
if (attribut1Wert!=NULL)
   {
   delete attribut1Wert;
   attribut1Wert=NULL;
   }
if (attribut2Name!=NULL)
   {
   delete attribut2Name;
   attribut2Name=NULL;
   }
if (attribut2Wert!=NULL)
   {
   delete attribut2Wert;
   attribut2Wert=NULL;
   }

for (zaehler=0;;)
    {
    datei.get(zeichen);
    if (datei.eof())
       {
       if (tagName == NULL && attribut1Name == NULL && attribut1Wert == NULL && attribut2Name == NULL && attribut2Wert == NULL) return 0;
       }
    switch(zeichen)
       {
	case ' ':
		if(zaehler)
		{
			puffer[zaehler]='\0';
			tagName = new char[zaehler+1];
			strcpy(tagName,puffer);
			zaehler=0;
		}
		break;
	case '=':
		if(attnamecount == 0)
		{
			puffer[zaehler]='\0';
			attribut1Name = new char[zaehler+1];
			strcpy(attribut1Name,puffer);
			attnamecount++;
			zaehler=0;
		}
		else if(attnamecount == 1)
		{
			puffer[zaehler]='\0';
			attribut2Name = new char[zaehler+1];
			strcpy(attribut2Name,puffer);
			attnamecount=0;
			zaehler=0;
		}
		break;
	case '"':
		if(attvaluecount == 0)
		{
			puffer[zaehler]='\0';
			attribut1Wert = new char[zaehler+1];
			strcpy(attribut1Wert,puffer);
			attvaluecount++;
			zaehler=0;
		}
		else if(attvaluecount == 1)
		{
			puffer[zaehler]='\0';
			attribut2Wert = new char[zaehler+1];
			strcpy(attribut2Wert,puffer);
			attvaluecount=0;
			zaehler=0;
		}
		break;
	case '\n':
	   return 1;
       break;
    case '>':
       break;
	case '<':
       break;
    default:
       puffer[zaehler]=zeichen;
       zaehler++;
       break;
       }
    }

{
int x;
cin >> x;
}
}

class ClToken
   {
public:
   ClToken();
   char *returnTagName() { return tagName; }
   char *returnAttribut1Name() { return attribut1Name; } 
   char *returnAttribut1Wert() { return attribut1Wert; }
   char *returnAttribut2Name() { return attribut2Name; } 
   char *returnAttribut2Wert() { return attribut2Wert; }
   int getToken(ifstream &datei);
private:
   char *tagName;
   char *attribut1Name;
   char *attribut1Wert;
   char *attribut2Name;
   char *attribut2Wert;
   } ;

#include <iostream>
using namespace std;
#include <fstream>

#include "token11.h"

int main()
{
ifstream eingabe;
ClToken token;

eingabe.open("daten.xml");
for (;;)
    {
    if (token.getToken(eingabe)==0) break;
    if (token.returnTagName() != NULL) cout << "Tag: " << token.returnTagName() << endl;
    if (token.returnAttribut1Name() != NULL)	cout << "Attributname: " << token.returnAttribut1Name() << endl;
    if (token.returnAttribut1Wert() != NULL) cout << "Attributwert: " << token.returnAttribut1Wert() << endl;
	if (token.returnAttribut2Name() != NULL)	cout << "Attributname: " << token.returnAttribut2Name() << endl;
    if (token.returnAttribut2Wert() != NULL) cout << "Attributwert: " << token.returnAttribut2Wert() << endl;
    cout << endl;
    }
eingabe.close();

{
int x;
cin >> x;
}
}
Code:
<Tag1 Attribut1="Wert1" Attribut2="Wert2">
<Tag2 Attribut1="Wert1" Attribut2="Wert2">
<Tag3 Attribut1="Wert1" Attribut2="Wert2">
<Tag4 Attribut1="Wert1" Attribut2="Wert2">
<Tag5 Attribut1="Wert1" Attribut2="Wert2">

_________________
Bild


Nach oben
   
 Betreff des Beitrags: Re: Informatikgedönse
BeitragVerfasst: Mittwoch 8. Dezember 2010, 20:41 
Offline
Weltfußballer
Weltfußballer
Benutzeravatar

Registriert: Montag 2. September 2002, 07:56
Beiträge: 1218
Uff, schwer zu lesen dein Code.

Hier mal Pseudocode (Java-Style):

while(datei hat zeilen) do
string zeile = datei.lieszeile

String tagname = zeile.substring(0, zeile.indexof(' '))
zeile = zeile.substring(zeile.indexof(' ');

String paar1= zeile.substring(0, zeile.indexof(' '))
zeile = zeile.substring(zeile.indexof(' ');

String paar2= zeile.substring(0, zeile.indexof(' '))

String attr1 = paar1.substring(0, paar1.indexof('='))
String value1 = paar1.substring(paar1.indexof('='))

String attr2 = paar2.substring(0, paar2.indexof('='))
String value2 = paar2.substring(paar2.indexof('='))

end do

Falls du es konkret brauchst, meld dich nochmal, dann helf ich dir.


Andere Frage: Müsst ihr char* verwenden oder kennst du nur std::string nicht?

_________________
Galileio ist tot
Einstein ist tot
und ich habe auch schon Husten


Nach oben
   
 Betreff des Beitrags: Re: Informatikgedönse
BeitragVerfasst: Dienstag 14. Dezember 2010, 19:37 
Offline
ACZ Metusalem
Benutzeravatar

Registriert: Dienstag 1. Januar 2002, 02:00
Beiträge: 17540
Wohnort: Heidelberger Hauptquatier
std::string kenne ich nicht. glaube ich. :D inwiefern funktioniert das denn anders?
hab die logik des parsers jetzt noch mal mit zuständen geschrieben (mit ner enum), jetzt funktionierts! ;)

_________________
Bild


Nach oben
   
 Betreff des Beitrags: Re: Informatikgedönse
BeitragVerfasst: Mittwoch 15. Dezember 2010, 09:54 
Offline
Weltfußballer
Weltfußballer
Benutzeravatar

Registriert: Montag 2. September 2002, 07:56
Beiträge: 1218
Code:
#include <stdafx.h>
#include <iostream>
#include<fstream>
#include <string>

class ClToken
{
public:
	std::string getTagName() { return tagName; }
	std::string getAttribut1Name() { return attribut1Name; }
	std::string getAttribut1Wert() { return attribut1Wert; }
	std::string getAttribut2Name() { return attribut2Name; }
	std::string getAttribut2Wert() { return attribut2Wert; }	

	void setAttribut1Name(std::string attribut1Name) {this->attribut1Name = attribut1Name;}
	void setAttribut1Wert(std::string attribut1Wert) {this->attribut1Wert = attribut1Wert;}
	void setAttribut2Name(std::string attribut2Name) {this->attribut2Name = attribut2Name;}
	void setAttribut2Wert(std::string attribut2Wert) {this->attribut2Wert = attribut2Wert;}
	void setTagName(std::string tagname) {this->tagName = tagname;}
private:
	std::string tagName;
	std::string attribut1Name;
	std::string attribut1Wert;
	std::string attribut2Name;
	std::string attribut2Wert;
};

int main()
{
	std::ifstream file("c:\\test.txt");
    std::string buffer;
	int count = 0;

	while(std::getline(file, buffer))
	{
		count++;
		ClToken *token = new ClToken();

		token->setTagName(buffer.substr(1, buffer.find_first_of(' ') - 1));
		buffer = buffer.substr(buffer.find_first_of(' ') + 1, buffer.length() - buffer.find_first_of(' '));

		std::string attr1 = buffer.substr(0, buffer.find_first_of(' '));
		token->setAttribut1Name(attr1.substr(0, attr1.find_first_of('=')));
		token->setAttribut1Wert(attr1.substr(attr1.find_first_of('=')+ 1, attr1.length() - attr1.find_first_of('=')));
		
		std::string attr2 = buffer.substr(buffer.find_first_of(' ') + 1, buffer.length() - buffer.find_first_of(' ') - 2);
		token->setAttribut2Name(attr2.substr(0, attr2.find_first_of('=')));
		token->setAttribut2Wert(attr2.substr(attr2.find_first_of('=')+ 1, attr2.length() - attr2.find_first_of('=')));
		
		std::cout << "Tag " << count << std::endl;
		std::cout << "Tagname: " << token->getTagName() << std::endl;
		std::cout << "Attr1: " << token->getAttribut1Name() << " : " << token->getAttribut1Wert() << std::endl;
		std::cout << "Attr2: " << token->getAttribut2Name() << " : " << token->getAttribut2Wert() << std::endl;		
		
		std::cout << std::endl;
		 
	}
	return 0;
}

_________________
Galileio ist tot
Einstein ist tot
und ich habe auch schon Husten


Nach oben
   
 Betreff des Beitrags: Re: Informatikgedönse
BeitragVerfasst: Freitag 14. Januar 2011, 18:41 
Offline
ACZ Metusalem
Benutzeravatar

Registriert: Dienstag 1. Januar 2002, 02:00
Beiträge: 17540
Wohnort: Heidelberger Hauptquatier
irgendwie macht mein kopf nach 5 stunden rumfrickeln grade zu und ich scheiter am eiiiiiiigentlich leichtesten teil der aufgabe... so hab ichs derzeit (is jetzt nur ein winziger ausschnitt aus der gesamten aufgabe)
Code:
for(int i=0;i<=jetzt->zahl;i++)
		  {
		  if(strcmp(jetzt->tags[i],puffer)!=0)
		  {
			  strcat(puffer, "-INVALIDE");
			  break;
		  }
		  else if(strcmp(jetzt->tags[i],puffer)==0)
		  {
			  strcat(puffer, "-VALIDE");
			  break;
		  }
Code:
struct element
   {
   int zahl;
   char name[64];
   char tags[10][64];
   element *weiteres;
   } ;
Was eigentlich passieren soll:
Ich habe ne DTD Datei ausgelesen und deren Inhalt in Strukturen (als verkettetet Listen) gespeichert.
Danach wird ne XML ausgelesen und nach jedem Starttag soll geprüft werden, ob dieses mit einem der ausgelesenen Tags aus der DTD identisch ist oder nicht.

Insgesamt gibt es 3 Tags. Eins in der ersten Struktur und 2 in der zweiten.
So wie ich den Code momentan habe, gleicht er allerdings nur mit dem tag aus der ersten struktur ab. Wie komme ich denn jetzt, möglichst einfach, an die anderen 2 tags in der zweiten struktur?

_________________
Bild


Nach oben
   
 Betreff des Beitrags: Re: Informatikgedönse
BeitragVerfasst: Freitag 14. Januar 2011, 22:26 
Offline
ACZ Metusalem
Benutzeravatar

Registriert: Dienstag 1. Januar 2002, 02:00
Beiträge: 17540
Wohnort: Heidelberger Hauptquatier
Habs jetzt noch mal neu gemacht. Alles etwas geordneter und überschaubarer als vorher. Zudem mit Klassen statt Structs gearbeitet.

Jetzt habe ich jedoch das "Problem" das ich nicht genau weiß wie ich zum Vergleichen der Strings an die ausgelesene (und als Objekte gespeicherte) DTD kommen soll.
Code:
class ClElement
   {
   public:
   ClElement();
   int zahl;
   char *gibName() { return name; }
   char *gibTags() { return *tags; }
   void verarbeite(ifstream &datei);
   void druckeelement(void);
   void ClElement::deleteData(void);
   private:
   char name[64];
   char tags[10][64];
   ClElement *next;
   } ;
So sieht die Klasse aus. Ich muss halt für das Vergleichen der Strings an zahl, name und tags. Selbst wenn alles 3 public is funktioniert das aber nicht, weil ich mich innerhalb einer Methode einer anderen Klasse befinde wenn ich die XML auslese (und anschließend die Strings vergleiche).
Code:
		  for(int i=0;i<=jetzt->zahl;i++)
		{
        if(strcmp(jetzt->tags[i],puffer)!=0)
        {
           strcat(puffer, "-INVALIDE");
           break;
        }
        else if(strcmp(jetzt->tags[i],puffer)==0)
        {
           strcat(puffer, "-VALIDE");
           break;
        }
:)5

_________________
Bild


Nach oben
   
 Betreff des Beitrags: Re: Informatikgedönse
BeitragVerfasst: Freitag 4. Februar 2011, 14:14 
Offline
Chefbiertrinker
Chefbiertrinker
Benutzeravatar

Registriert: Freitag 13. Juli 2001, 02:00
Beiträge: 15336
Wohnort: Bierkasten
Mal was zu Windows Skripten

Wenn ich mit %1 den Filename bekomme, also quasi für das Kontext Menü in windows

"Editiere mit Notepad" und dann
notepad.exe %1 funzt ja wunderbar, er liefert den kompletten Filenamen an Notepad.

Gibts da ne Möglichkeit nur die Dateiendung oder ur den Dateinamen zu bekommen?

Also %1 liefert "C:\MeiMuddaIhrKudder\hallo.txt"

ich brauche aber "hallo" oder "txt"

geht dat?
Rangoo sprich :D

_________________
BildBild


Nach oben
   
 Betreff des Beitrags: Re: Informatikgedönse
BeitragVerfasst: Freitag 4. Februar 2011, 16:41 
Offline
Chefbiertrinker
Chefbiertrinker
Benutzeravatar

Registriert: Freitag 13. Juli 2001, 02:00
Beiträge: 15336
Wohnort: Bierkasten
Zitat:
Ja, geht.

Google!

%~x1

Ernsthaft, schon mal gegoogelt? :D
........................ liebe menschen, die immer davon ausgehen dat der andere nen vollspasti ist :D
nachem echt allem möglichen
wonach hast du? hab command line arguments, windows context menu und blubb
liefert leider exakt nichts, erscheint statt filenamen halt nur %~x1.
alternativ zu %1 noch %~n1 oder %l gefunden, was auch nicht geht, liefert immer absoluten path
weil windows wohl nur die argumente übergibt und nicht das ding als datei behandelt, quasi nur strings, die nach anzahl der ausgewählten files im explorer übergeben werden

andere menschen haben sich dann programm geschrieben, dat den filenamen dann verarbeitet, aber will ja direkt von windows nur den dateinamen ohne endung überliefert bekommen, wenn ich vom kontextmenu ne .exe oder ähnliches aufrufe

_________________
BildBild


Nach oben
   
 Betreff des Beitrags: Re: Informatikgedönse
BeitragVerfasst: Freitag 4. Februar 2011, 17:09 
Offline
Chefbiertrinker
Chefbiertrinker
Benutzeravatar

Registriert: Freitag 13. Juli 2001, 02:00
Beiträge: 15336
Wohnort: Bierkasten
jo, die dinger hat ich probiert
die funzen wohl in .bat files, aber nicht vom explorer aus
da haste wohl nur %1 - %x was dir den filenamen übergibt
die dort angebenen argumente werden gar nicht aufgelöst

geht halt um erweiterung des kontextmenus (wie zb open with notepad) im zusammenspiel mit der regedit, DA soll an die .exe halt "c:\abc.txt" nicht übergeben werden sondern zb nur "abc"
funzt mit den obrigen dingern leider allet nich

_________________
BildBild


Nach oben
   
 Betreff des Beitrags: Re: Informatikgedönse
BeitragVerfasst: Freitag 4. Februar 2011, 17:27 
Offline
Chefbiertrinker
Chefbiertrinker
Benutzeravatar

Registriert: Freitag 13. Juli 2001, 02:00
Beiträge: 15336
Wohnort: Bierkasten
naja, mach ich es halt von hinten durch die brust ins auge und lege ne .bat datei an, die %1 verarbeitet

_________________
BildBild


Nach oben
   
 Betreff des Beitrags: Re: Informatikgedönse
BeitragVerfasst: Montag 7. Februar 2011, 18:49 
Offline
ACZ Metusalem
Benutzeravatar

Registriert: Dienstag 1. Januar 2002, 02:00
Beiträge: 17540
Wohnort: Heidelberger Hauptquatier
Ich will Datensätze einlesen die unbegrenzt lang sein dürfen. Gleichzeitig muss ich aber mit srcpy arbeiten, da ich die Daten zeichenweise einlesen muss und deshalb statt mit std::strings mit char arrays arbeite.
Wie gehe ich am besten vor? Gibts ne Möglichkeit ein char array zu definieren ohne seine größe vorher festzulegen?

_________________
Bild


Nach oben
   
 Betreff des Beitrags: Re: Informatikgedönse
BeitragVerfasst: Samstag 25. Juni 2011, 18:59 
Offline
ACZ Metusalem
Benutzeravatar

Registriert: Dienstag 1. Januar 2002, 02:00
Beiträge: 17540
Wohnort: Heidelberger Hauptquatier
Nach langer Zeit mal wieder :D

Jemand hier mal mit Qt gearbeitet? Ich hab ein Widget das ein Zeichenfeld mit einem Rechteck und 3 PushButtons beinhaltet. Ende, laden und speichern. Das Rechteck ist am Anfang genau in der Mitte. Beim Linksklick wander es 25px nach links, beim Rechtsklick entsprechend nach rechts. Serialisieren der Koordinaten klappt ohne Probleme. Ich erhalte dann eine Datei die die beiden int-Werte für x und y enthält in dem Format (ohne Anführungszeichen): "225 450"

Ich komme nur noch nicht mit dem Laden/Deserialisieren klar, bzw. mir fehtl die Idee wie ich das am besten realisiere dass er das vorhandene Rechteck dann löscht und es an die entsprechende Stelle (deren Koordinaten beim Laden eingelesen wurden) zeichnet.

_________________
Bild


Nach oben
   
 Betreff des Beitrags: Re: Informatikgedönse
BeitragVerfasst: Montag 26. März 2012, 10:47 
Offline
Saftschubse
Benutzeravatar

Registriert: Dienstag 18. September 2001, 02:00
Beiträge: 4514
Wohnort: Hamburg Süd
Einfaches Kontaktformular. Username, Wunschspieler 1 und 2 und Captcha passt, aber wenn ich dann auf senden klicke kommt "
Du musst deine E-Mail Adresse angeben
Du musst eine Nachricht angeben". Ich will aber einfach

Username:
Wunschspieler 1:
Wunschspieler 2:

Dann senden und ich krieg ne EMail. Habe halt einfach die contact.php (die funzt) angepasst mit den Begriffen und Nachricht rausgenommen.

Was muss also noch raus oder geändert werden?
Code:
<?php

require_once "maincore.php";
require_once THEMES."templates/header.php";
include LOCALE.LOCALESET."contact.php";

add_to_title($locale['global_200'].$locale['000004']);

if (isset($_POST['sendmessage'])) {
	$error = "";
	$mailname = substr(stripinput(trim($_POST['mailname'])), 0, 50);
	$email = substr(stripinput(trim($_POST['email'])), 0, 100);
	$subject = substr(str_replace(array("\r","\n","@"), "", descript(stripslash(trim($_POST['subject'])))), 0, 50);
	$message = descript(stripslash(trim($_POST['message'])));
	if ($mailname == "") {
		$error .= " <span class='alt'>".$locale['420']."</span><br />\n";
	}
	if ($email == "" || !preg_match("/^[-0-9A-Z_\.]{1,50}@([-0-9A-Z_\.]+\.){1,50}([0-9A-Z]){2,4}$/i", $email)) {
		$error .= " <span class='alt'>".$locale['421']."</span><br />\n";
	}
	if ($subject == "") {
		$error .= " <span class='alt'>".$locale['422']."</span><br />\n";
	}
	if ($message == "") {
		$error .= " <span class='alt'>".$locale['423']."</span><br />\n";
	}
	$_CAPTCHA_IS_VALID = false;
	include INCLUDES."captchas/".$settings['captcha']."/captcha_check.php";
	if ($_CAPTCHA_IS_VALID == false) {
		$error .= " <span class='alt'>".$locale['424']."</span><br />\n";
	}
	if (!$error) {
		require_once INCLUDES."sendmail_include.php";
		if (!sendemail($settings['siteusername'],$settings['siteemail'],$mailname,$email,$subject,$message)) {
			$error .= " <span class='alt'>".$locale['425']."</span><br />\n";
		}
	}
	if ($error) {
		opentable($locale['000004']);
		echo "<div style='text-align:center'><br />\n".$locale['442']."<br /><br />\n".$error."<br />\n".$locale['443']."</div><br />\n";
		closetable();
	} else {
		opentable($locale['000004']);
		echo "<div style='text-align:center'><br />\n".$locale['440']."<br /><br />\n".$locale['441']."</div><br />\n";
		closetable();
	}
} else {
	opentable($locale['000004']);
	echo $locale['000005']."<br /><br />\n";
	echo "<form name='userform' method='post' action='".FUSION_SELF."'>\n";
	echo "<table cellpadding='0' cellspacing='0' class='center'>\n<tr>\n";
	echo "<td width='100' class='tbl'>".$locale['000001']."</td>\n";
	echo "<td class='tbl'><input type='text' name='mailname' maxlength='100' class='textbox' style='width: 200px;' /></td>\n";
	echo "</tr>\n<tr>\n";
	echo "<td width='100' class='tbl'>".$locale['000002']."</td>\n";
	echo "<td class='tbl'><input type='text' name='email' maxlength='100' class='textbox' style='width: 200px;' /></td>\n";
	echo "</tr>\n<tr>\n";
	echo "<td width='100' class='tbl'>".$locale['000003']."</td>\n";
	echo "<td class='tbl'><input type='text' name='subject' maxlength='100' class='textbox' style='width: 200px;' /></td>\n";
	echo "</tr>\n<tr>\n";
		echo "<td width='100' class='tbl'>".$locale['407']."</td>\n";
	echo "<td class='tbl'>";
	include INCLUDES."captchas/".$settings['captcha']."/captcha_display.php";
	if (!isset($_CAPTCHA_HIDE_INPUT) || (isset($_CAPTCHA_HIDE_INPUT) && !$_CAPTCHA_HIDE_INPUT)) {
		echo "</td>\n</tr>\n<tr>";
		echo "<td class='tbl'><label for='captcha_code'>".$locale['408']."</label></td>\n";
		echo "<td class='tbl'>";
		echo "<input type='text' id='captcha_code' name='captcha_code' class='textbox' autocomplete='off' style='width:100px' />";
	}
	echo "</td>\n</tr>\n<tr>\n";
	echo "<td align='center' colspan='2' class='tbl'>\n";
	echo "<input type='submit' name='sendmessage' value='".$locale['406']."' class='button' /></td>\n";
	echo "</tr>\n</table>\n</form>\n";
	closetable();
}

require_once THEMES."templates/footer.php";
?>

_________________
PRO Outing von Schwulen!!! :effe:


Nach oben
   
 Betreff des Beitrags: Re: Informatikgedönse
BeitragVerfasst: Dienstag 1. Mai 2012, 13:32 
Offline
Saftschubse
Benutzeravatar

Registriert: Dienstag 18. September 2001, 02:00
Beiträge: 4514
Wohnort: Hamburg Süd
Lunkens hilft mir ja nicht :effe:

Ich habe ein Formular mit welchem man mir eine Aufstellung schicken kann.
Man trägt per Dropdown die Position ein und daneben den Namen.
Dann klickt man auf senden und ich kriege eine Mail.

Allerdings sieht die Mail dann so aus:
Zitat:
position: TW
position: TW
position: TW
position: TW
position: TW
position: TW
position: TW
position: TW
position: TW
position: TW
position: TW
Spielername_1: test
Spielername_2: test
Spielername_3: test
Spielername_4: test
Spielername_5: test
Spielername_6: test
Spielername_7: test
Spielername_8: test
Spielername_9: test
Spielername_10: test
Spielername_11:test


Ich will aber das es so aussieht (grob):
Zitat:
position: TW test
position: TW test
position: TW test
position: TW test
position: TW test
position: TW test
position: TW test
position: TW test
position: TW test
position: TW test
position: TW test
Sprich es soll direkt der Name hinter der Position stehen.

Hier der Codeschnippsel der dafür zuständig ist.
Code:
foreach ($_POST as $name => $wert) {
        if (is_array($wert)) {
		    foreach ($wert as $einzelwert) {
			    $mailtext .= $name.$trenner.$einzelwert."\n"; 
            }
        } else {
            $mailtext .= $name.$trenner.$wert."\n";
        }
    }
Hier wie ich das Formular erstellt habe.
Code:
<select size=1 name="position[]">
        <option value="TW">TW</option>
        <option value="LV">LV</option>
        <option value="IV">IV</option>
		<option value="RV">RV</option>
		<option value="ZM">ZM</option>
		<option value="ZDM">ZDM</option>
		<option value="LM">LM</option>
		<option value="RM">RM</option>
		<option value="LOM">LOM</option>
		<option value="ZOM">ZOM</option>
		<option value="ROM">ROM</option>
		<option value="LF">LF</option>
		<option value="RF">RF</option>
		<option value="MS">MS</option>
		<option value="ST">ST</option>		
		<input type="text" name="Spielername 1" />
		<br />
Wie kriege ich es also hin?!

_________________
PRO Outing von Schwulen!!! :effe:


Nach oben
   
 Betreff des Beitrags: Re: Informatikgedönse
BeitragVerfasst: Mittwoch 2. Mai 2012, 09:00 
Offline
Saftschubse
Benutzeravatar

Registriert: Dienstag 18. September 2001, 02:00
Beiträge: 4514
Wohnort: Hamburg Süd
MACHT!
Kann doch nich so schwer sein!

_________________
PRO Outing von Schwulen!!! :effe:


Nach oben
   
 Betreff des Beitrags: Re: Informatikgedönse
BeitragVerfasst: Mittwoch 2. Mai 2012, 09:52 
Offline
ACZ Metusalem
Benutzeravatar

Registriert: Dienstag 1. Januar 2002, 02:00
Beiträge: 17540
Wohnort: Heidelberger Hauptquatier
php bin ich nicht so der chef, müsst ich mir mal in ruhe angucken.
mache ich, wenn ich freitag wieder in köln bin ;)

_________________
Bild


Nach oben
   
 Betreff des Beitrags: Re: Informatikgedönse
BeitragVerfasst: Mittwoch 2. Mai 2012, 10:39 
Offline
Saftschubse
Benutzeravatar

Registriert: Dienstag 18. September 2001, 02:00
Beiträge: 4514
Wohnort: Hamburg Süd
alta, dafür muss man doch nix chef sein oder :D
wette is mega simpel, lunkens hat aber einfach hirnfrass und vegetiert auf arbeit vor sich hin :D

_________________
PRO Outing von Schwulen!!! :effe:


Nach oben
   
 Betreff des Beitrags: Re: Informatikgedönse
BeitragVerfasst: Samstag 22. September 2012, 16:35 
Offline
Saftschubse
Benutzeravatar

Registriert: Dienstag 18. September 2001, 02:00
Beiträge: 4514
Wohnort: Hamburg Süd
Jemand grundsätzlich eine Idee wie ich sowas am besten löse?

Bei PES sind die Gesamtstärken ja ziemlich schlecht, Gomez 77 und sowas.

Ich will nun den ganzen verschiedenen Attributen eine Gewichtung geben je nach Position und dann eine Positionsgebundene Stärke haben.

Jemand eine Idee wie? Eine Formel?

Normal reicht ja:

Attribut*Gewichtung+Attribut2*Gewichtung/AnzahlAttribute

Aber dann kommen da riesige Zahlen bei raus.

Jemand einen besseren Ansatz?

_________________
PRO Outing von Schwulen!!! :effe:


Nach oben
   
 Betreff des Beitrags: Re: Informatikgedönse
BeitragVerfasst: Sonntag 23. September 2012, 23:31 
Offline
ACZ Metusalem
Benutzeravatar

Registriert: Dienstag 1. Januar 2002, 02:00
Beiträge: 17540
Wohnort: Heidelberger Hauptquatier
Müsste es nicht statt /AnzahlAttribute einfach /Gesamtgewichtung?
Also zb (AttributX*2)+(AttributY*4)/6

_________________
Bild


Nach oben
   
 Betreff des Beitrags: Re: Informatikgedönse
BeitragVerfasst: Montag 24. September 2012, 08:58 
Offline
Saftschubse
Benutzeravatar

Registriert: Dienstag 18. September 2001, 02:00
Beiträge: 4514
Wohnort: Hamburg Süd
Macht Sinn, danke :D probiere ich nachher mal aus

_________________
PRO Outing von Schwulen!!! :effe:


Nach oben
   
 Betreff des Beitrags: Re: Informatikgedönse
BeitragVerfasst: Montag 24. September 2012, 09:23 
Offline
Saftschubse
Benutzeravatar

Registriert: Dienstag 18. September 2001, 02:00
Beiträge: 4514
Wohnort: Hamburg Süd
So wirklich brauchbare Werte kommen nicht dabei herum bei Gewichtung 1-5. Aber der Ansatz müsste ja hinhauen

_________________
PRO Outing von Schwulen!!! :effe:


Nach oben
   
 Betreff des Beitrags: Re: Informatikgedönse
BeitragVerfasst: Donnerstag 4. Oktober 2012, 09:12 
Offline
Saftschubse
Benutzeravatar

Registriert: Dienstag 18. September 2001, 02:00
Beiträge: 4514
Wohnort: Hamburg Süd
Ich hab sone Kaderliste. Da wird aber nicht naach der Stäörke/Posiutionm sortiert, sondern nach der Playerid.
wie gehtn das mit php nun nach der position zu sortieren?

_________________
PRO Outing von Schwulen!!! :effe:


Nach oben
   
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen  Auf das Thema antworten  [ 104 Beiträge ]  Gehe zu Seite Vorherige 1 2 3

Alle Zeiten sind UTC+02:00


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 2 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
cron
Powered by phpBB® Forum Software © phpBB Limited
Deutsche Übersetzung durch phpBB.de