Seite 1 von 1
Verfasst: 11.06.2008, 11:02
von mirko
https:// geht, die Unterstützung ist eingebaut. Dein Server muss natürlich https:// unterstützen, das tun die meisten, auch wenn das Zertifikat kein richtiges bezahltes ist.
Sinn kann https:// machen wenn man irgendwo im Internetcafe ist und keiner die Daten mitschneiden soll, auf dem eigenen PC braucht man das eigentlich nicht. Natürlich musst du das Export-Script mit Passwort schützen oder einen Dateinamen vergeben, den man nicht erraten kann. Beachtet man das nicht, dann könnte irgendwer von außen die Kundendaten klauen.
Verfasst: 11.06.2008, 10:44
von powdermaniac.de
okay, separator am ende der zeile ist weg.
danke.
noch eine frage nebenbei.
macht es sinn, das script bei httpS abzurufen? geht das überhaupt?
Verfasst: 10.06.2008, 17:37
von mirko
Ja nach der for-Schleife bevor es an $content angehangen wird.
Verfasst: 10.06.2008, 17:17
von powdermaniac.de
ich könnte ja auch am schluss noch abfragen, ob das letzte zeichen ein separator ist und das dann weglassen?
Verfasst: 10.06.2008, 16:29
von mirko
Wenn das erste Feld beim ersten Schleifendurchlauf leer ist, dann kommt es zu Problemen in meiner Variante, davon gehe ich natürlich nicht aus.
Bei deiner Variante ist dann am Ende eine Spalte mehr weil der $Separator immer ans Ende geschrieben wird. Richtig ist der Export damit nur, wenn du auch oben im Script bei der Kopfzeile einen zusätzlichen $Separator ans Ende der Zeile schreibst. SuperMailer selbst macht der zusätzliche Separator nichts, weil intern eine Prüfung eingebaut ist ob die definierten Spalten mit den Daten übereinstimmen. Stimmt es nicht überein, dann wird die Spalte ignoriert. Andere Programme könnten Probleme bekommen, weil ein Pufferüberlauf (der greift ins nichts) entstehen könnte.
Verfasst: 10.06.2008, 13:13
von powdermaniac.de
beim import über mysqlexport.php aus der mysql db verschieben sich die felder der datensätze, die das erste feld nicht gefüllt haben um eben dieses nach vorne.
ich habe leider nicht im ansatz eine idee, woran es liegen kann.
nur das email feld (nicht das erste) ist auf not_null gesetzt. hat es damit etwas zu tun?
Code: Alles auswählen
while ($row = mysql_fetch_row($result)) {
$line="";
for ($i=0; $i<count($row); $i++) {
if ($line != "")
$line = $line.$Separator.$row[$i];
else
$line = $row[$i];
}
$content .= $line.$CRLF;
}
hier wird ja erst in die bedingung gesprungen, wenn $line NICHT leer ist. beim ersten mal ist $line eh leer. kommt dann aber noch das leere feld dazu wird der separator nicht geschrieben.
hab ich das richtig verstanden?
habe jetzte folgende Änderungen durchgeführt:
Code: Alles auswählen
while ($row = mysql_fetch_row($result)) {
$line="";
for ($i=0; $i<count($row); $i++) {
if ($line != "")
******************************
$line = $line.$row[$i].$Separator;
else
$line = $row[$i].$Separator;
******************************
}
$content .= $line.$CRLF;
}
Damit wird der Separator hinter die Felder geschrieben und so ist $line nur beim ersten mal leer. Nicht auch, wenn das erste Feld leer ist.
Auf den ersten Blick hat\'s jetzt so geklappt.
Könntest du bitte mal schauen, ob ich jetzt evtl. andere Probleme hervorrufen könnte.
Danke.