![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
|
|||||
|
Всем привет , сначала приведу код :
use CGI ':standard';
use CGI qw(:cgi-lib);
use Win32::OLE;
use Win32::OLE::Const 'Microsoft ActiveX Data Objects';
print "Content-type: text/html\n\n";
my $q = new CGI;
$action=$q->param('action');
$model=$q->param('model');
$table=$q->param('table');
$wmodel=$q->param('wmodel');
$wtype=$q->param('wtype');
$wbrand=$q->param('wbrand');
$wfeatures=$q->param('wfeatures');
$wdescr=$q->param('wdescr');
$wbtu=$q->param('wbtu');
$wprice=$q->param('wprice');
$wfilled=$q->param('wfilled');
$wfeatures=~s/\n/<br>/gi;
$wdescr=~s/\n/<br>/gi;
if($model eq ''){$model='L308';}
if($table eq ''){$table='bbq';}
$database = "disk:/path/to/my/dbfile.mdb";
$Conn = Win32::OLE->new("ADODB.Connection");
$RS = Win32::OLE->new("ADODB.Recordset");
$DSN = "PROVIDER=MSDASQL;DRIVER={Microsoft Access Driver (*.mdb)};
DBQ=$database;UID=;PWD=;";
$Conn->Open($DSN);
if ($action eq 'write'){&write;exit 0;}
&read;
#............. here all reading things , works fine
#............. end of reading .......
sub write{
if ($wfilled == 1){
chomp $wmodel, $wtype, $wbrand, $wdescr, $wfeatures, $wbtu, $wprice;
$RS->Open($table, $Conn, adLockOptimistic, adOpenDynamic);
my $fields = [qw(model type brand descr features btu price)];
my $values = [$wmodel, $wtype, $wbrand, $wdescr, $wfeatures, $wbtu, $wprice];
$RS->AddNew ($fields, $values);
$RS->Close;
print "$wmodel<br>$wtype<br>$wbrand<br>$wdescr<br>$wfeatures<br>$wbtu<br>$wprice<br>";
}else{
print qq~
<html>
<head>
<link href=../styles.css rel=stylesheet type=text/css>
</head>
<body>
<center>
<form method="post" name="submiting" action="1.pl" enctype="multipart/form-data">
<table width="75%" border="0" cellpadding="0" cellspacing="0">
<tr>
<td>model</td>
<td>
<input type="text" name="wmodel" value="newmodel">
</td>
</tr>
<tr>
<td>type</td>
<td>
<input type="text" name="wtype" value="newtype">
</td>
</tr>
<tr>
<td>brand</td>
<td>
<input type="text" name="wbrand" value="newbrand">
</td>
</tr>
<tr>
<td>descr</td>
<td>
<textarea name="wdescr" cols="30" rows="10"></textarea>
</td>
</tr>
<tr>
<td height="75">features</td>
<td height="75">
<textarea name="wfeatures" cols="30" rows="10"></textarea>
</td>
</tr>
<tr>
<td>btu</td>
<td>
<input type="text" name="wbtu" value="newbtu">
</td>
</tr>
<tr>
<td>price</td>
<td>
<input type="text" name="wprice" value="new pr">
</td>
</tr>
<tr>
<td>
<input type="hidden" name="wfilled" value="1">
<input type="hidden" name="action" value="write">
</td>
<td>
<input type="submit">
<input type="reset">
</td>
</tr>
</table>
</form>
</center>
</body>
</html>
~;
}
}
$Conn->Close;
этот код как то странно работает , а именно , если я его вызываю из cmd то всё нормально срабатывает если пишу в браузере cgi-bin/1.pl?action=write&wfilled=1&myfields=myvalues то значения записываються , но если я отпровляю это всё через форму (см.выше) то ничего не происходит , переменные скрипт принимает но в DB не пишет ! пробывал писать форму с разными ->method="post" или без него ->action="1.pl" или без него ->enctype="multipart/form-data" ил без него или "text/plain" ниодна не работает , почему ????????????? |
|
|||||
|
[+1 23.05.11]
Регистрация: Dec 2001
Сообщений: 4,159
|
enctype="multipart/form-data"
Зачем?
__________________
GIT d++ s++:++ a C++$ UB++ P++ L+ E+ W+++ N++ w++ O+ M V- t-- 5-- X+ R+++ tv- b+++ D++ |
|
|||||
|
понимаешь , когда в одном месте не работает , а в другом работает и я не понимаю почему та к, я начинаю пробывать разные способы , enctype="multipart/form-data" был один из них
|
|
|||||
|
проблема решена одно поле было number а я в него текст пробывал впихнуть
![]() |
![]() |
Часовой пояс GMT +4, время: 02:04. |
|
|
« Предыдущая тема | Следующая тема » |
|
|