[Zope] (no subject)
Shaw, Howard
ShawH@STHS.org
Tue, 20 Apr 1999 09:15:00 -0500
See my responses below.
Howard C. Shaw III
Programmer/SysAdmin
St. Thomas High School
> ----------
> From: Tom Deprez[SMTP:Tom.Deprez@uz.kuleuven.ac.be]
> Sent: Tuesday, April 20, 1999 8:39 AM
> To: zope@zope.org
> Subject: [Zope] (no subject)
>
> Hi all,
>
> I use PostGreSQL (if you need to know)
>
> 1) the SQL Method :
>
> INSERT INTO list
> VALUES (<!--#sqlvar item_string type=string-->
> ,<!--#sqlvar vendorcode_int type=int-->
> ,<!--#sqlvar quantity_int type=int-->)
>
> seems to work fine (new data is entered in database) It only gives the
> result text of 'this was not a query'... how comes?
>
This is not a problem. All it means is that it did not result in a query
object being returned. (I.e. there were no 'results')
> 2) I've made DTML Document with :
>
> <FORM METHOD="post" ACTION="???????">
> <TABLE BORDER="0">
> <TR>
> <TD>New Item:</TD>
> <TD><INPUT NAME="item_string"></TD>
> </TR>
> <TR>
> <TD>Vendor:</TD>
> <TD><INPUT NAME="vendor_string"></TD>
> </TR>
> <TR>
> <TD>Quantity:</TD>
> <TD><INPUT NAME="quantity_int"></TD>
> </TR>
> </TABLE>
> <INPUT TYPE="submit">
> </FORM>
>
> 3) How do I glue these together? So that when pressing submit the
> values
> are inserted in the database??
>
> I've putted the SQL Method in the ACTION, but this doesn't seem to
> work.
>
You need to have the form names the same as the variables in your table,
or use another DTML page to parse the results. That is, your
vendor_string needs to be a vendor_int. See my response below to
accomplish this.
> 4) Actualy It should return a new page with inserting of ...
> succesfull
> (inserting ... was not successfull)... how can this be done?
>
Can't help you here, except to say that if you use a second DTML page to
call the SQL query, it can provide a customized response as well.
> 5) Instead of letting the user enter the vendorname (<INPUT
> NAME="vendor_string">), I would like to give him a combobox (<SELECT>
> NAME...). This combobox should be filled with the result of a query to
> all
> vendors in the database. How can this be done? i.e. Putting the result
> set
> of a query in a select box.
>
Create an SQL query 'venderlistdb'
SELECT vendorname, vendorid FROM vendors ORDER by vendorname
and in the DTML document with the form
<select name=vendorcode_int size=5>
<!--#in vendorlistdb-->
<option value=<!--#var vendorcode-->><!--#var vendorname-->
<!--#/in-->
</select>
> 6) If I 5 can be done, the insert SQL should slightly change :
>
> INSERT INTO list
> VALUES (<!--#sqlvar item_string type=string-->
> ,<!--#sqlvar vendorcode_int type=int-->
> ,<!--#sqlvar quantity_int type=int-->)
>
> with the vendorcode_int comming from another sql :
>
> select vendorcode
> from vendors
> WHERE <!--#sqltest vendor_name column=vendorname type=string-->
>
Don't need this extra select. With the snippet above, you show them the
name, but you get the code.
> How can this be done???
>
> Help, can somebody help me with these?
>
> Really thanks in advance!
>
> Tom.
>
>
> _______________________________________________
> Zope maillist - Zope@zope.org
> http://www.zope.org/mailman/listinfo/zope
>
> (For developer-specific issues, use the companion list,
> zope-dev@zope.org - http://www.zope.org/mailman/listinfo/zope-dev )
>