jizz-mo
Goto Top

Möchte ein Formular erstellen, der mir HTML Code erzeugt. Benötige Ratschläge

Hallo wieder einmal,

da man hier auf kompetenten Rat zählen kann, möchte ich erneut um Unterstützung bitten, um mein kleines Projekt zu realisieren.

Da bei meinen Eltern im Keller viele Sachen rumliegen und mein Papa meint, die Sachen könnte man eventuell bei ebay verkaufen, habe ich mich rangemacht, verstärkt Artikel bei ebay einzustellen. Spätestens nach dem 5. Mal ist es doch ziemlich langweilig geworden.

1. Fotos machen
2. Fotos von Digitalkamera auf PC ziehen
3. Fotos auf ein Imageserver hochladen (was bald nicht mehr benötigt wird, da in einem anderen Thread eine NAS empfohlen wurde, die ich mir schon bestellt habe)
4. Titel und Infos in meiner ebay HTML Vorlage aktualisieren
5. Links zu den Fotos in die HTML Vorlage einfügen

Um Punkt 4. und 5. zu optimieren, möchte ich diese Schritte automatisieren.

Deswegen möchte ich ein Formular erstellen, bei dem ich einige Infos einfüge und das Formular generiert mir den Code, den ich benötige.
Habe mal zum verdeutlichen selber was gebastelt:

4bf97f5c6bf5c78c0d1a59761d11ea50

Bei den Bildern soll nur die Nummer des ersten und des letzten Bildes angegeben werden, so dass eine Schleife bis zum letzten Bild hochzählt und jedes mal dieselbe Zeile mit der aktuellen Nummer des Bildes in den Code einträgt.

Nun benötige ich für mein kleines Projekt Ratschläge, um die Idee zu verwirklichen. Gibt es für diese Aufgabe bereits ein Programm, dass so etwas erledigen kann, oder muss das eigens programmiert werden? Ein richtiger Programmierheld bin ich nicht gerade, deswegen hoffe ich, dass bereits so etwas existiert. Wenn nicht, könnt ihr vielleicht etwas anderes empfehlen?

Content-Key: 289073

Url: https://administrator.de/contentid/289073

Ausgedruckt am: 29.03.2024 um 05:03 Uhr

Mitglied: jthuemmler
Lösung jthuemmler 23.11.2015, aktualisiert am 25.11.2015 um 12:58:40 Uhr
Goto Top
Hi,

sieht nicht so aus, als ob Du ums Programmieren rumkommst... Da das relativ einfach ist, läßt es sich sicher in fast jeder Sprache programmieren... womit hast Du denn schon zu tun gehabt?

Jörg
Mitglied: eisbein
Lösung eisbein 23.11.2015, aktualisiert am 25.11.2015 um 12:58:34 Uhr
Goto Top
Hallo!

Ist zwar nicht die bevorzugte Lösung, aber du könntest alles mittels Microsoft Word bzw. Excel machen und dann als .html speichern.
Der Code enthält dann zwar noch allerhand 'Müll' aber eben auch die gewünschten HTML-Zeilen.

Gruß
Eisbein
Mitglied: Jizz-Mo
Jizz-Mo 23.11.2015 um 10:41:29 Uhr
Goto Top
Zitat von @eisbein:

Hallo!

Ist zwar nicht die bevorzugte Lösung, aber du könntest alles mittels Microsoft Word bzw. Excel machen und dann als .html speichern.
Der Code enthält dann zwar noch allerhand 'Müll' aber eben auch die gewünschten HTML-Zeilen.

Gruß
Eisbein
Verstehe ich nicht ganz. Stehe doch auf dem Schlauch, sorry
Mitglied: Jizz-Mo
Jizz-Mo 23.11.2015 um 10:42:11 Uhr
Goto Top
Zitat von @jthuemmler:

Hi,

sieht nicht so aus, als ob Du ums Programmieren rumkommst... Da das relativ einfach ist, läßt es sich sicher in fast jeder Sprache programmieren... womit hast Du denn schon zu tun gehabt?

Jörg
Ich hätte es in Java programmiert. Habe vor Ewigkeiten da mit awt und swing zu tun gehabt. Naja dauert halt ein bisschen länger. Müsste mir das alles nochmals anschauen. Hätte ja sein können, dass sowas schon existiert.
Mitglied: eisbein
Lösung eisbein 23.11.2015, aktualisiert am 25.11.2015 um 12:58:26 Uhr
Goto Top
Zitat von @Jizz-Mo:
Verstehe ich nicht ganz. Stehe doch auf dem Schlauch, sorry

Nachdem du ohnehin zu jedem Foto noch Infos per Hand eingibst und es dir 'nur' um den HTML-Code des jeweiligen Fotos geht, kannst du dir in Word/Excel eine Vorlage basteln, in der du die Daten einfügst. Dann speicherst du die Word/Excel-Datei als .html-Format ab und kannst dir dann den HTML-Code anschauen.

Wenn du alles automatisieren willst kommst du ums programmieren nicht herum.

Gruß
Eisbein
Mitglied: Jizz-Mo
Jizz-Mo 23.11.2015 um 11:00:51 Uhr
Goto Top
Zitat von @eisbein:

Zitat von @Jizz-Mo:
Verstehe ich nicht ganz. Stehe doch auf dem Schlauch, sorry

Nachdem du ohnehin zu jedem Foto noch Infos per Hand eingibst und es dir 'nur' um den HTML-Code des jeweiligen Fotos geht, kannst du dir in Word/Excel eine Vorlage basteln, in der du die Daten einfügst. Dann speicherst du die Word/Excel-Datei als .html-Format ab und kannst dir dann den HTML-Code anschauen.

Wenn du alles automatisieren willst kommst du ums programmieren nicht herum.

Gruß
Eisbein

Ah jetza, war mit den Gedanken schon Richtung programmieren abgedriftet. Ja diese Alternative hab ich in Betracht gezogen, aber wirklich Vorteile hat es mir nicht gebracht. Das muss doch programmiert werden so wie es aussieht. Na dann mach ich mich mal daran, in den nächsten Tagen wieder mal zu programmieren. Kann ja nicht schaden.
Mitglied: 114757
Lösung 114757 23.11.2015, aktualisiert am 25.11.2015 um 12:58:18 Uhr
Goto Top
Moin,
hier mal was schnell was in Powershell, wenn hier immer nur von "programmieren" gesprochen aber nichts konkretes vorgelegt wird :
cls
[void][System.Reflection.Assembly]::LoadWithPartialName("System.Windows.Forms")  
$titel = Read-Host "Titel eingeben"  
$info1 = Read-Host "Info1 eingeben"  
$info2 = Read-Host "Info2 eingeben"  
$info3 = Read-Host "Info3 eingeben"  
[int]$bild_von = Read-Host "Bild von"  
[int]$bild_bis = Read-Host "Bild bis"  
if ($bild_von -eq $null -or $bild_bis -eq $null){write-host "Die angegebenen Zahlen sind nicht gültig" -ForegroundColor Yellow ;return}  

$code = @"  
<style type="text/css">  
.header{text-align:center; font-size:6; clear:both}
.info{text-align:center; font-size:5; clear:both; padding:5px}
.image{text-align:center;clear:both; padding:5px}
</style>
<div class="header">$titel</div>  
<p>Infos:</p>
<div class="info">$info1</div>  
<div class="info">$info2</div>  
<div class="info">$info3</div>  
$($bild_von..$bild_bis | %{"<div class=`"image`"><img src=`"http://domain.de/$_.jpg`"/></div>`n"})  
"@  

[System.Windows.Forms.Clipboard]::SetText($code)
write-host "Code wurde in die Zwischenablage kopiert !"  
Das ganze kann natürlich nach Bedarf erweitert/ergänzt werden, auch wenn eine GUI verlangt wird ist das wie immer problemlos machbar.
Die grenzen zieht immer nur der TO mit deinem Wissen...

Gruß jodel32
Mitglied: Jizz-Mo
Jizz-Mo 23.11.2015 um 11:09:54 Uhr
Goto Top
Ich werde meine Lösung auch hier posten, sobald ich eine habe.
Mitglied: TheJoker2305
Lösung TheJoker2305 23.11.2015, aktualisiert am 25.11.2015 um 12:58:15 Uhr
Goto Top
Ich würde die Sache mit Excel lösen.
Die Eingaben per Maske oder direkt in die Tabellenspalten eintragen.


In einer Ausgabespalte dann die Felder in den HTMl Quelltext einbauen und auf die Excel Tapete dann einen Button "generiere Artikeldateien".

Darin gehts per Schleife durch alle Zeilen mit einer Artikelbezeichnung.
Dabei wird die Artikelbezeichnung oder hilfsweise eine fiktive interne Artikelnummer Zeilennummer) als Dateiname.txt verwendet.
Die Bild_von bis Bild_bis Felder werden per Schleife durchlaufen und jeweils eine Zeile HMTL Quellcode generieren.

Diese werden dann in einem Ausgabepfad C:\ebay-Artikel\ gespeichert (1 Datei pro Artikel).
So geht es am schnellsten face-smile
Mitglied: 114757
Lösung 114757 23.11.2015, aktualisiert am 25.11.2015 um 12:58:05 Uhr
Goto Top
Zitat von @TheJoker2305:

Ich würde die Sache mit Excel lösen.
Die Eingaben per Maske oder direkt in die Tabellenspalten eintragen.
Jup so gehts natürlich auch, aber warum postet Ihr nicht mal zur Abwechslung ein bisschen nützlichen Code face-wink für den TO ?!
Für die Excel Jünger ...
https://drive.google.com/file/d/0B_Oqbs4tcHfrY2lwRVNVNEpPMm8/view?usp=sh ...

So wie noch andere 1001 Varianten face-smile

Dafür gibt's zwar auch schon X Anwendungen, aber beim selber machen lernt man gleichzeitig auch noch was und kann das ganze seinem persönlichen Workflow besser anpassen ...

Gruß jodel32
Mitglied: Jizz-Mo
Jizz-Mo 25.11.2015 um 12:57:57 Uhr
Goto Top
Alsooo, ich habe mich dazu entschieden, das Projekt als Windows Forms Projekt in Visual Sudio zu realisieren. Habe meine GUI schon zusammengebastelt. Ist ja kein Hexenwerk mit dem Framework. Sieht sogar einigermaßen professionell aus. Sobald alles fertig ist, werde ich die fertige Arbeit hier posten. Vielleicht hat ja noch irgendwer Spaß daran...

Vielen Dank euch allen. Habe doch gewusst, dass auf euch Verlass ist.
Mitglied: Jizz-Mo
Jizz-Mo 30.11.2015 um 22:51:13 Uhr
Goto Top
So Leute, ich habe inzwischen den Code fertig, den ich hier auch teilen möchte. Projekt ist als Windows Forms realisiert. Den Code für meine GUI habe ich nicht gepostet. Kann jeder selber eine dazu bauen. Falls jemand doch den Code benötigt, kann er/sie sich bei mir melden.
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace eBay_Webtool
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {

        }

        private void buttonHtmlErstellen_Click(object sender, EventArgs e)
        {
            String zeile1;
            String zeile2;
            String zeile3;
            String zeile4;
            String zeile5;
            String zeile6;
            String zeilenFotos;
            decimal bildVon;
            decimal bildBis;

            zeile1 = "<div style=\"text-align: center;\"><font size=\"6\">" + textBoxTitel.Text + "</font></div>" + Environment.NewLine;  
            zeile2 = "<div style=\"text-align: center;\"><font size=\"5\"><br></font></div>" + Environment.NewLine;  
            zeile3 = "<div style=\"text-align: center;\"><font size=\"5\"><b><u>Infos:</u></b></font></div>" + Environment.NewLine;  
            zeile4 = "<div style=\"text-align: center;\"><font size=\"5\">" + textBoxInfo1.Text + "</font></div>" + Environment.NewLine;  
            zeile5 = "<div style=\"text-align: center;\"><font size=\"5\">" + textBoxInfo2.Text + "</font></div>" + Environment.NewLine;  
            zeile6 = "<div style=\"text-align: center;\"><font size=\"5\">Allgemeinzustand siehe Fotos<br></font></div><div><br></div>" + Environment.NewLine;  

            zeilenFotos = null;
            bildVon = numericUpDownVon.Value;
            bildBis = numericUpDownBis.Value;

            while (bildVon <= bildBis)
            {
                zeilenFotos = zeilenFotos + "<div style=\"text-align: center;\"><img src=\"http://MeineNAS/" + bildVon + ".jpg\" border=\"0\" alt=\"" + textBoxTitel.Text + "\"></div><div><br></div>" + Environment.NewLine;  
                bildVon++;
            }

            textBoxHtmlCode.Text = zeile1 + zeile2 + zeile3 + zeile4 + zeile5 + zeile6 + zeilenFotos;
        }

        private void buttonZwischenablage_Click(object sender, EventArgs e)
        {
            Clipboard.SetText(textBoxHtmlCode.Text);
        }

        private void buttonLeeren_Click(object sender, EventArgs e)
        {
            textBoxTitel.Clear();
            textBoxInfo1.Clear();
            textBoxInfo2.Clear();
            textBoxInfo3.Clear();
            numericUpDownVon.Value = 0;
            numericUpDownBis.Value = 0;
            textBoxHtmlCode.Clear();
        }

        private void textBoxTitel_Enter(object sender, EventArgs e)
        {
            textBoxTitel.SelectAll();
        }

        private void textBoxInfo1_Enter(object sender, EventArgs e)
        {
            textBoxInfo1.SelectAll();
        }

        private void textBoxInfo2_Enter(object sender, EventArgs e)
        {
            textBoxInfo2.SelectAll();
        }

        private void textBoxInfo3_Enter(object sender, EventArgs e)
        {
            textBoxInfo3.SelectAll();
        }

        private void numericUpDownVon_Enter(object sender, EventArgs e)
        {
            numericUpDownVon.Select(0, numericUpDownVon.Text.Length);
        }

        private void numericUpDownBis_Enter(object sender, EventArgs e)
        {
            numericUpDownBis.Select(0, numericUpDownBis.Text.Length);
        }
    }
}