CentOS 5.8 –SQL Abfrage– HTML wird generiert und daraus müssen mehrere Mails versendet werden

Diskutiere CentOS 5.8 –SQL Abfrage– HTML wird generiert und daraus müssen mehrere Mails versendet werden im Programmieren allgemein Forum im Bereich Programmieren unter Linux/Unix; allo Zusammen, wir haben eine Webbasierte Inventar Datenbank,aus dieser DB muss ich eine Mail generieren die mir anzeigt welche Geräte aus der...

  1. swizzi

    swizzi Grünschnabel

    Dabei seit:
    08.02.2018
    Beiträge:
    2
    Zustimmungen:
    0
    allo Zusammen,

    wir haben eine Webbasierte Inventar Datenbank,aus dieser DB muss ich eine Mail generieren die mir anzeigt welche Geräte aus der Garantie laufen. Nun ist es so das diese Bash Abfrage die ich erstellt hab super funktioniert.( Mail Addresse wird auch hinterlegt)

    Die nächste Anforderung ist die, dass jeder User automatisch eine Mail erhalten soll mit seinem Gerät welches er zur Zentrale bringen soll. Und wir uns den Aufwand sparen können jeden User selber anzuschreiben.


    Wie schaffe ich es ein Script zu schreiben der aus jeder Zeile die Mail ADD nimmt und die gleiche spalte als Tabelle versendet?


    z.B: soll die Zeile von AFS an AFS@dir.de und die Zeile von ABFD an ABFD@dir.de versendet werden

    Die Mail sieht wie folgt aus: [​IMG]


    Hätte da jemand eine Idee?


    SYSTEM; CENTOS 5.8 DB MySQL

    Mein jetztiger Code sieht so aus:

    Code:
    #!/bin/bash
    jahr=$(date -d "-1 year" +"%Y")
    monat=$(date -d "+1 month" +"%m")
    monatganz=$(date -d "+1 month" +"%B")
    jahrganz=$(date -d "-1 year" +"%C%y")
    
    rm -f ./Jahres_Pruefung_E_Check_Peripherals.html
    touch ./Jahres_Pruefung_E_Check_Peripherals.html
    echo "To: bla@dir.de" >> ./Jahres_Pruefung_E_Check_Peripherals.html
    
    echo "Subject: Jahres_Pruefung_E_Check_Peripherals $monatganz $jahrganz" >> ./Jahres_Pruefung_E_Check_Peripherals.html
    echo "Content-Type: text/html; charset='us-ascii'" >> ./Jahres_Pruefung_E_Check_Peripherals.html
    echo "<html>" >> ./Jahres_Pruefung_E_Check_Peripherals.html
    echo "<head>" >> ./Jahres_Pruefung_E_Check_Peripherals.html
    echo "</head>" >> ./Jahres_Pruefung_E_Check_Peripherals.html
    echo "<body>" >> ./Jahres_Pruefung_E_Check_Peripherals.html
    echo "<h2>Hallo Zentrale!</h2>" >> ./Jahres_Pruefung_E_Check_Peripherals.html
    echo "<p>" >> ./Jahres_Pruefung_E_Check_Peripherals.html
    echo "Folgende Liste stellt alle Geräte dar, die im naechsten Monat <b>($monatganz)</b> geprüft werden <b>sollen.</b><br>" >> ./Jahres_Pruefung_E_Check_Peripherals.html
    echo "Fuer <b>jedes Gerät muss ein Ticket</b> angelegt werden, es sei denn, das Gerät wird nicht mehr verwendet!<br>"  >> ./Jahres_Pruefung_E_Check_Peripherals.html
    echo "<br>" >> ./Jahres_Pruefung_E_Check_Peripherals.html
    echo "Der jeweilige Kunde ist als Customer im Ticket zu hinterlegen.<br>"  >> ./Jahres_Pruefung_E_Check_Peripherals.html
    echo "<br>" >> ./Jahres_Pruefung_E_Check_Peripherals.html
    echo "<b>Hinweis:</b> Ein Standardtext fuer das Ticket ist in C hinterlegt.<br>"  >> ./Jahres_Pruefung_E_Check_Peripherals.html
    echo "<a href='https://test.de'>C-Link</a>">> ./Jahres_Pruefung_E_Check_Peripherals.html
    echo "<br>" >> ./Jahres_Pruefung_E_Check_Peripherals.html
    echo "</p>" >> ./Jahres_Pruefung_E_Check_Peripherals.html
    
    mysql -h localhost -u glpi_user -pglpi glpi_db -t -H -e "SELECT glpi_users.name AS USER, glpi_useremails.email AS Email, glpi_peripherals.serial AS SerialNumber, glpi_peripherals.template_name AS Type, glpi_peripherals.name AS InventoryNumber,
    glpi_peripherals.users_id AS UserID, glpi_states.completename AS Status,glpi_plugin_customfields_peripherals.e_check_nummer AS Echeck,glpi_plugin_customfields_peripherals.next_e_check AS Next_e_check,
    glpi_plugin_customfields_peripherals.last_e_check AS Last_e_check,glpi_locations.name AS Ort,glpi_peripherals.locations_id AS LocationID
    from glpi_peripherals
    Left join glpi_plugin_customfields_peripherals ON (glpi_peripherals.id = glpi_plugin_customfields_peripherals.id)
    Left join glpi_locations ON (glpi_locations.id = glpi_peripherals.locations_id)
    LEFT JOIN glpi_states ON(glpi_peripherals.states_id = glpi_states.id)
    LEFT JOIN glpi_useremails ON (glpi_peripherals.users_id = glpi_useremails.users_id)
    Left join glpi_users On (glpi_peripherals.users_id = glpi_users.id)
    Where ( glpi_plugin_customfields_peripherals.e_check_nummer IS NOT NULL)
    and
    (glpi_states.completename like '%e')
    and
    (glpi_peripherals.locations_id like '1')
    and
    glpi_plugin_customfields_peripherals.last_e_check like '$jahr-$monat-%'">> ./Jahres_Pruefung_E_Check_Peripherals.html;
    echo "</body>" >> ./Jahres_Pruefung_E_Check_Peripherals.html
    echo "</html>" >> ./Jahres_Pruefung_E_Check_Peripherals.html
    
    /usr/sbin/sendmail bla@dir.de < ./Jahres_Pruefung_E_Check_Peripherals.html
    
    
     
  2. swizzi

    swizzi Grünschnabel

    Dabei seit:
    08.02.2018
    Beiträge:
    2
    Zustimmungen:
    0
    Die Mail die erstellt wird sieht im ganzen so aus.
     

    Anhänge:

  3. #3 HeadCrash, 09.02.2018
    HeadCrash

    HeadCrash Routinier

    Dabei seit:
    16.05.2009
    Beiträge:
    489
    Zustimmungen:
    1
    Ort:
    Bayern
    Hi,

    das "einfachste":
    das SQL-Query noch mal ohne "-H" ausgeben lässt und dann mittels awk, cut oder ähnlichem Zeile für Zeile durch arbeitest.


    Das schönere:
    in einer Skriptsprache deiner Wahl (Perl / PHP / Python) mit entsprechenden Funktionen arbeiten.

    Bash ist schön für Filesystem-Geschichten, aber sowas würde ich dann doch eher mit einer der oberen Sprachen abfrühstücken.
    Es sollte auch für alle genügend Tutorials im Netz sein um eine Datenbankabfrage hinzubekommen :) .

    mfg
    HeadCrash
     
Thema:

CentOS 5.8 –SQL Abfrage– HTML wird generiert und daraus müssen mehrere Mails versendet werden

Die Seite wird geladen...

CentOS 5.8 –SQL Abfrage– HTML wird generiert und daraus müssen mehrere Mails versendet werden - Ähnliche Themen

  1. Anlage einer SWAP-Datei unter CentOS 7 funktioniert nicht

    Anlage einer SWAP-Datei unter CentOS 7 funktioniert nicht: Hallo zusammen, ich verwende einen vServer von Strato (Linux V30) mit CentOS 7 64bit. Hier wollte ich nun einen SWAP-Speicher mit 8GB anlegen -...
  2. CentOS 7.3.1611 und PPA'S

    CentOS 7.3.1611 und PPA'S: Hallo wie kann man PPA's in CentOS integrieren?
  3. CentOS 7.3.1611 und Virtualbox guest Addition

    CentOS 7.3.1611 und Virtualbox guest Addition: Hallo ich konnte trotz Internetrecherche keine deutsprachige Anleitung für CentOS 7.3.1611 und Virtualbox guest Addition installation finden. Wie...
  4. [SOLVED][CentOS 7] Samba server nicht erreichbar trotz firewall regeln.

    [SOLVED][CentOS 7] Samba server nicht erreichbar trotz firewall regeln.: Hallo zusammen, ich habe auf einem XenServer (CentOS 7) einen Samba Server installiert und eingerichtet. Ich habe auch entsprechende Regeln in...
  5. CentOS + kernel +closed Source?

    CentOS + kernel +closed Source?: Hallo ich möchte wissen (deutschsprachig) ob der Kernel von CentOS 7.3.1611 closed Source ist?
  1. Diese Seite verwendet Cookies um Inhalte zu personalisieren. Außerdem werden auch Cookies von Diensten Dritter gesetzt. Mit dem weiteren Aufenthalt akzeptierst du diesen Einsatz von Cookies.
    Information ausblenden