|
Yes, i have opened all the access... Any other idea? TQ
|
|
|
|
|
lhsunshine wrote: Yes, i have opened all the access...
I'd doubt that. Create a small test-page from where you open a connection to the database, and try with that.
Are you using a hosted solution, or is this your "own" server?
What does the page do? Does it show at all? Does it show an error? What error?
As a side-remark; Every members' question is equally urgent.
|
|
|
|
|
It does not show any error. When i click the "capture" button photo, the photo is captured. But does not save into the database...
|
|
|
|
|
Paste your database-save-code here, and we'll have a look. I assume you added an exception-handler to the example from the tutorial?
|
|
|
|
|
Sorry for late reply. This is my code. TQ
Sorry for late reply. This is my code. TQ
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Collections.Generic;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.IO;
using System.Web.Security;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Xml.Linq;
using System.Data.SqlClient;
using Pic.User;
using Pic.Action;
using Pic.Common;
namespace Pic
{
public partial class ImageConversions : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
clsAction action = new clsAction();
DateTime thisDay = DateTime.Now;
string time = thisDay.ToString("yyyyMMMd HHmmss");
string imgMember = time + ".jpg";
string imgPath = "MemberPicture/" + imgMember;
txtAcc.Text = Session["Cust"].ToString();
lblGeoID.Text = Session["geoID"].ToString();
//lblMNo.Text = Session["memberNo"].ToString();
//lblMName.Text = Session["memberName"].ToString();
lblMember.Text = Session["Member"].ToString();
//string memberID = Convert.ToInt32(txtAcc.Text);
int memberGeoID = Convert.ToInt32(lblGeoID.Text);
CreatePhoto();
action.ExecuteInsert(imgMember, imgPath, txtAcc.Text, memberGeoID,lblMember.Text);
}
void CreatePhoto()
{
try
{
string strPhoto = Request.Form["imageData"]; //Get the image from flash file
byte[] photo = Convert.FromBase64String(strPhoto);
DateTime thisDay = DateTime.Now;
string time = thisDay.ToString("yyyyMMMd HHmmss");
//get the file name of the posted image
string imgMember = time + ".jpg";
//sets the image path
string imgPath = "MemberPicture/" + imgMember;
//then save it to the Folder
FileStream fs = new FileStream(imgPath, FileMode.OpenOrCreate, FileAccess.Write);
BinaryWriter br = new BinaryWriter(fs);
br.Write(photo);
br.Flush();
br.Close();
fs.Close();
}
catch (Exception Ex)
{
throw;
}
}
}
}
//=======================================================================================================
public void ExecuteInsert(string member, string path, string acNo, int memberGeoID, string memberNo)
{
try
{
clsDB db = new clsDB();
clsUser user = new clsUser();
SqlParameter[] sqlParams = {
new SqlParameter("@ImageMember", member),
new SqlParameter("@ImgPath", path),
new SqlParameter("@MID", acNo),
new SqlParameter("@M_GeoID", memberGeoID),
//new SqlParameter("@MNo", MNo),
//new SqlParameter("@MName", MName),
new SqlParameter("@memberNo", memberNo)
};
db.ExecuteStoredProcedure("spAddMemberPic", sqlParams);
}
catch (Exception)
{
throw;
}
}
|
|
|
|
|
You'll have to debug the CreatePhoto method, and verify the contents of the variables. Also verify that the user has the correct access-rights to that folder.
A few remarks on the code;
|
|
|
|
|
//I have modified my code to become like this.
//Logfile does not show any error message.
//Still cannot function well in server but can function well in local only.
namespace Pic
{
public partial class ImageConversions : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
clsAction action = new clsAction();
DateTime thisDay = DateTime.Now;
string time = thisDay.ToString("yyyyMMMd HHmmss");
string imgMember = time + ".jpg";
string fName="MemberPicture/";
string imgPath = Path.Combine(fName,imgMember);
try
{
txtAcc.Text = Session["Cust"].ToString();
lblGeoID.Text = Session["geoID"].ToString();
lblMember.Text = Session["Member"].ToString();
int memberGeoID = Convert.ToInt32(lblGeoID.Text);
CreatePhoto();
action.ExecuteInsert(imgMember, imgPath, txtAcc.Text, memberGeoID, lblMember.Text);
lblMsg.Text = "Success";
}
catch (Exception ex)
{
FileInfo txt = new FileInfo("Log.txt");
StreamWriter sw = txt.AppendText();
sw.WriteLine(DateTime.Now.ToString("dd-MM-yyyy HH:mm:ss tt") + " " + "Line No:" + ex.Source + " Message " + ex.Message);
sw.WriteLine(" ");
sw.WriteLine(DateTime.Now.ToString("dd-MM-yyyy HH:mm:ss tt") + " " + ex.StackTrace);
sw.WriteLine(" ");
sw.WriteLine(" ");
sw.Close();
}
}
void CreatePhoto()
{
try
{
string strPhoto = Request.Form["imageData"]; //Get the image from flash file
byte[] photo = Convert.FromBase64String(strPhoto);
DateTime thisDay = DateTime.Now;
string time = thisDay.ToString("yyyyMMMd HHmmss");
//get the file name of the posted image
string imgMember = time + ".jpg";
string fName = "MemberPicture/";
string imgPath = Path.Combine(fName, imgMember);
string fileName = Path.Combine(fName,imgPath);
using (var fs = new FileStream(imgPath, FileMode.OpenOrCreate, FileAccess.Write))
{
// read the file
BinaryWriter br = new BinaryWriter(fs);
br.Write(photo);
br.Flush();
br.Close();
fs.Close();
}
}
catch (Exception ex)
{
FileInfo txt = new FileInfo("Log.txt");
StreamWriter sw = txt.AppendText();
sw.WriteLine(DateTime.Now.ToString("dd-MM-yyyy HH:mm:ss tt") + " " + "Line No:" + ex.Source + " Message " + ex.Message);
sw.WriteLine(" ");
sw.WriteLine(DateTime.Now.ToString("dd-MM-yyyy HH:mm:ss tt") + " " + ex.StackTrace);
sw.WriteLine(" ");
sw.WriteLine(" ");
sw.Close();
}
}
}
}
|
|
|
|
|
I used firebug. It shows "500 Internal Server Error".
|
|
|
|
|
Good morning
lhsunshine wrote: 500 Internal Server Error
That's a generic message, saying something went wrong during execution of the code on the server. There'll be an exception probably, but that should have shown in your text-file now. Unless, the user isn't allowed to write there. Perhaps it's easier to display the message using Response.Write . I'm not an ASP-programmer, but the code "looks" like it should run.
I'm guessing that something goes wrong either by decoding the picture from Base64 (try and save the raw data, might be a nice clue for debugging) or the users' rights. Easy way to check the latter is by creating a small test-page that writes a line of text to that location.
|
|
|
|
|
HAHA... Overhere now is night time...
My Log.txt file is worked. I have try to input other error. Log.txt has an error message. But now is no error shown. I think it never go to this page. This page is fire from the button "Capture" in flash. I suspect the action script in flash do not fire.
|
|
|
|
|
|
I have this link: iPad/Tablet/eBook Accessories on my page then when requesting it I am getting a server error application but I have found the issue but I am stack on how to correct it.Then my kestion is How to split this link : iPad/Tablet/eBook Accessories into something like this iPad-Tablet-eBook.aspx when requesting it,in other word I want it to be like this iPad-Tablet-eBook.aspx in url because I am splitting like this
else if (HttpContext.Current.Request.Url.ToString().ToLower().Contains("/product/"))
{
string[] url = HttpContext.Current.Request.Url.ToString().Split(new string[] { "/Product/" }, StringSplitOptions.None);
url = url[url.Length - 1].Split('/');
|
|
|
|
|
Hey Guys...so trying to get my head around MVC
My Index for holiday page is linked to the model
@model HolidayBookingApp.Models.HolidayList
Im trying to pull the value of Holidays remaining from the HList4DD (HolidayListForDropDown) which is coming from the HolidayList.cs page.
I can get it through...
@foreach (var item in Model.HList4DD)
{
<tr>
<td>
@Html.DisplayFor(modelItem => item.PersonId)
</td>
<td>
@Html.DisplayFor(modelItem => item.HolidayDate)
</td>
<td>
@Html.DisplayFor(modelItem => item.Person.HolidaysRemaining)
</td>
Although this displays the holidays remaining for every holiday booked. So if 20 holidays is the limit (4 booked and 16 remaining) this will produce a list of the dates of holidays booked i.e 4 records stating which date is booked, but it will show the '16' holidays remaining 4 times as well.
Yes, this is because it is inside the for loop but I tried to display it on its own and it didnt work
@Html.DisplayFor(model => model.HList4DD.//what do i add here?
Also tried to add
Person person = new Person();
currentHolidaysRemaining = person.HolidaysRemaining;
to the HolidayList. cs then in the view do
@Html.DisplayFor(model => model.currentHolidaysRemaining)
but its not pulling across the correct value, just returning 0
please advise....thanks
|
|
|
|
|
Im now using
bool isFirst = true;
@int remainingHolidays = 0;
@foreach (var item in Model.HList4DD)
{
<tr>
<td>
@Html.DisplayFor(modelItem => item.PersonId)
</td>
<td>
@Html.DisplayFor(modelItem => item.HolidayDate)
</td>
if (isFirst)
{
remainingHolidays = item.Person.HolidaysRemaining;
isFirst = false;
}
<td>
@Html.ActionLink("Edit", "Edit", new { id = item.Id }) |
@Html.ActionLink("Details", "Details", new { id = item.Id }) |
@Html.ActionLink("Delete", "Delete", new { id = item.Id })
</td>
</tr>}
<tr>
<div class="editor-label">
@* @Html.LabelFor(model => model.PList4DD, "Person")*@
</div>
<div class="editor-field">
<form action ="/Holidays/Index" id="some" method="post">
@* *WORKING VERSION**@ @Html.DropDownListFor(model => model.HList4DD.First().HolidayDate, new SelectList(Model.PList4DD, "Id", "Name", Model.currentPersonID), "--select--")
<script>
function updateFormEnabled()
{
if (verifyAdSettings())
{
$('#sbmt').removeAttr('disabled');
}
else
{
$('#sbmt').attr('disabled', 'disabled');
}
}
function verifyAdSettings()
{
if ($('#HolidayDate').val() != '')
{
return true;
}
else
{
return false;
}
}
$('#HolidayDate').change(updateFormEnabled);
</script>
<td>
@remainingHolidays.ToString()
</td>
<input type="submit" id= "sbmt" name="ViewHolidaysDD" value="View"/>
</form>
<script>
$('#sbmt').attr('disabled', '');
</script>
</table>
the @remainingHolidays.ToString() 5 lines or so up from the bottom is saying it doesnt exist in the current context?
|
|
|
|
|
Maybe you are over thinking the problem.
xnaLearner wrote: @foreach (var item in Model.HList4DD)
{
<tr>
<td>
@Html.DisplayFor(modelItem => item.PersonId)
</td>
<td>
@Html.DisplayFor(modelItem => item.HolidayDate)
</td>
<td>
@Html.DisplayFor(modelItem => item.Person.HolidaysRemaining)
</td>
Then you just increment the value of i.
Hope this helps.
[edit] fixed formating.
Frazzle the name say's it all
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live.
John F. Woods
|
|
|
|
|
Yeah that worked thanks for the help frazzle
|
|
|
|
|
|
Im using microsoft sql server management studio to create my tables.
I previously had the relationships working but I have to go back an re-do them and it is throwing me an error:
im trying to do primary key 'person id' in person table with foreign key in holiday table 'person id'556
But when I try to save it I am getting the error:
- Unable to create relationship 'FK_Holidays_Person'.
The ALTER TABLE statement conflicted with the FOREIGN KEY constraint "FK_Holidays_Person". The conflict occurred in database "holidays", table "dbo.Person", column 'Id'.
any idea as to why it won't allow me to update this?
|
|
|
|
|
You have at least one record in the holidays table with a person ID which doesn't exist in the person table.
SELECT DISTINCT PersonID
FROM Holidays As H
WHERE Not Exists
(
SELECT 1
FROM Person As P
WHERE P.ID = H.PersonID
)
"These people looked deep within my soul and assigned me a number based on the order in which I joined."
- Homer
|
|
|
|
|
thank you for the reply, i had to delete all the data in both tables to get it to work
|
|
|
|
|
Hi,
in my application (running in Windows CE) I use a XML file to store some configuration data that, at runtime, I load in a DataSet.
To read and to store these data I use the following code:
Private Shared Function SetCfgData() As Boolean
Try
Dim fs As New FileStream(CGlobali.CfgDataFileComplName, FileMode.Open)
Dim xr As XmlReader = System.Xml.XmlReader.Create(fs)
CGlobali.CfgData.Clear()
CGlobali.CfgData.ReadXml(xr)
xr.Close()
fs.Close()
Catch ex As System.IO.FileNotFoundException
MessageBox.Show("File " & CGlobali.CfgDataFileComplName & " not found.")
Return False
Catch ex As XmlException
MessageBox.Show("XmlException occured: " & ex.ToString)
Return False
End Try
Return True
When the user modifies these data, they are automatically updated in the DataSet and saved in the file, at least that's what I would do...
To save the data from the DataSet to the file I do this:
Private Shared Function UpdateCgfFile() As Boolean
Try
Dim StreamEncoding As Encoding
StreamEncoding = Encoding.Unicode
Dim cfgfile As New System.IO.StreamWriter(CGlobali.CfgDataFileComplName, True, StreamEncoding)
CGlobali.CfgData.WriteXml(cfgfile)
cfgfile.Close()
Return True
Catch ex As Exception
Return False
End Try
End Function
What I would get with the above code is to update existing fields in the xml file with the new values, but what I get is that the same fields are added to the existing ones.
This is the "original" file:
="1.0"="UTF-16"
<Sezioni>
<PLC>
<IP>10.0.0.85</IP>
<Port>502</Port>
<Description></Description>
<PauComm>15000</PauComm>
<ConTOut>5000</ConTOut>
<RxTOut>5000</RxTOut>
</PLC>
</Sezioni>
and this is the file after a save:
="1.0"="UTF-16"
<Sezioni>
<PLC>
<IP>10.0.0.85</IP>
<Port>502</Port>
<Description></Description>
<PauComm>15000</PauComm>
<ConTOut>5000</ConTOut>
<RxTOut>5000</RxTOut>
</PLC>
</Sezioni>
<Sezioni>
<PLC>
<IP>192.168.1.10</IP>
<Port>502</Port>
<Description />
<PauComm>15000</PauComm>
<ConTOut>5000</ConTOut>
<RxTOut>5000</RxTOut>
</PLC>
</Sezioni>
Obviously this is not the result I want to achieve, I do not want to duplicate fields, I want to update the existing ones.
Can someone tell me what I'm doing wrong?
Thanks in advance.
|
|
|
|
|
steve_9496613 wrote: Can someone tell me what I'm doing wrong?
Dim cfgfile As New System.IO.StreamWriter(CGlobali.CfgDataFileComplName, True, StreamEncoding)
What does the second parameter in the StreamWriter do?
true to append data to the file; false to overwrite the file. If the specified file does not exist, this parameter has no effect, and the constructor creates a new file.
|
|
|
|
|
...ops...
...next time I'll be more careful...
Thanks Eddy
|
|
|
|
|
You're welcome
|
|
|
|
|
I have a assembly A that must use .NET framework 3.5. This assembly has a referense to a 3rd party assembly that has been developed with .net framework 4.0. The problem is that I can't build because the 3rd party uses FW 4.0. Is it possible to solve this?
|
|
|
|
|