2016-07-29 66 views
-1

ich an meinem Arbeitsplatz auf ein sehr spezifisches Problem zu arbeiten und nicht in der Lage, Antworten zu finden für das, was ich fürPerl: info aus der Datenbank in eine Form (HTML)

Suche ich bin auf der Suche Informationen aus einer MySQL-Datenbank abrufen und zu einem Formular hinzufügen, damit sie einer anderen Datenbank hinzugefügt werden können. Vor dem Senden muss der Benutzer jedoch Änderungen vornehmen und der abgerufenen Information der ersten Datenbank weitere Daten hinzufügen können . (Stellen Sie sich vor "kopieren und einfügen, wenn Sie wollen" von der ersten Datenbank in das HTML-Formular ohne Vorlage, wenn es Sinn macht)

Ich habe die HTML-Schaltfläche und die SQL-Statmenet bereit, aber nicht wissen, wo Sie von hier gehen?

HTML:

print " <div style=\"z-index:86;\" class=\"group-shell\">"; 
print " <table>\n"; 
print " <tr><td><input class=\"dial-red-button\" id=\"importFromCAD\" type=\"submit\" value=\"Import Info\"></td></tr>\n"; 

Perl SQL-Anweisung:

$sql_statement20 = "select * FROM CT_AL_CAD_ID where CAD='$CAD' ORDER BY KeyField DESC"; 
    $sth20 = $dbh->prepare($sql_statement20); 
    $sth20->execute(); 
    $sth20->bind_columns(undef, \$ID_data[0], \$ID_data[1], \$ID_data[2], \$ID_data[3], \$ID_data[4], \$ID_data[5], \$ID_data[6], \$ID_data[7], \$ID_data[8], \$ID_data[9], \$ID_data[10], \$ID_data[11], \$ID_data[12]); 

    $sth20->fetch(); 

Ich habe für ein paar Tage auf dieses Problem stecken geblieben. Jede Hilfe oder Ideen werden geschätzt.

+1

Genau wie funktioniert das nicht? –

+0

@MarcB Wie zeige ich die abgerufenen Informationen aus der Datenbank den Benutzern in den Formularfeldern an, damit sie geändert werden können, ohne dass die Informationen zuerst an die zweite Datenbank gesendet werden. auch ich habe diesen jquery code für meine taste. hoffen, dass es '\ $ (document) .ready (function() { \t \ $ (' # importFromCAD '). klicken (function() { \t \t \ $ (' # importNav '). val ('‘hilft); \t \t return true; ' – Allen

+0

cross post bei http://perlmonks.com/?node_id=1168832 –

Antwort

0

Führen Sie Ihre SQL-Anweisung aus, bevor Sie die HTML-Ausgabe erstellen. Verwenden Sie dann die Variable, die Ihre Datenbankdaten enthält (@ID_data) im HTML. Etwas wie folgt aus:

print " <div style=\"z-index:86;\" class=\"group-shell\">"; 
print " <table>\n"; 
foreach (0 .. $#ID_data) { 
    print "<tr><td>ID data $_:</td><td><input name=\"ID_data_$_\" value=\"$ID_data[$_]\"></td></tr>\n"; 
} 
print " <tr><td><input class=\"dial-red-button\" id=\"importFromCAD\" type=\"submit\" value=\"Import Info\"></td></tr>\n"; 

Beachten Sie, dass Ihr Code sauberer sein, wenn Sie lernen Heredocs und qq(...) zu verwenden.

print <<END_OF_HTML; 
<div style="z-index:86;" class="group-shell"> 
<table> 
END_OF_HTML 

foreach (0 .. $#ID_data) { 
    print qq(<tr><td>ID data $_:</td><td><input name="ID_data_$_" value="$ID_data[$_]"></td></tr>\n); 
} 
print qq(<tr><td><input class="dial-red-button" id="importFromCAD" type="submit" value="Import Info"></td></tr>\n); 

Und es wird kommen noch sauberer, wenn Sie a templating engine verwenden.