view tests/dbupload.ur @ 1892:907a82a44f01

Add missing inter-library dependencies This is needed, at least on recent Ubuntu, to fix these linker errors when compiling any Ur/Web application: liburweb.so: undefined reference to `lround' liburweb.so: undefined reference to `ceil' liburweb.so: undefined reference to `RAND_bytes' liburweb.so: undefined reference to `DES_fcrypt' liburweb.so: undefined reference to `SHA256_Init' liburweb.so: undefined reference to `SHA256_Final' liburweb.so: undefined reference to `SHA256_Update' Signed-off-by: Anders Kaseorg <andersk@mit.edu> --- src/c/Makefile.am | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-)
author Anders Kaseorg <andersk@mit.edu>
date Thu, 21 Nov 2013 14:32:11 -0500
parents 216a3a67ebe3
children
line wrap: on
line source
table t : { Id : int, Blob : blob, MimeType : string }
sequence s

fun getImage id : transaction page =
    r <- oneRow1 (SELECT t.Blob, t.MimeType
                  FROM t
                  WHERE t.Id = {[id]});
    returnBlob r.Blob (blessMime r.MimeType)

fun main () : transaction page =
    let
        fun handle r =
            id <- nextval s;
            dml (INSERT INTO t (Id, Blob, MimeType)
                 VALUES ({[id]}, {[fileData r.File]}, {[fileMimeType r.File]}));
            main ()
    in
        x <- queryX1 (SELECT t.Id FROM t)
                     (fn r => <xml><img src={url (getImage r.Id)}/><br/></xml>);
        return <xml><body>
          <form><upload{#File}/> <submit action={handle}/></form>
          <hr/>
          {x}
        </body></xml>
    end