Yussi Ariefiyono
yussi ariefiyono
This user hasn't shared any biographical information
Posts by yussi ariefiyono
z index in IE 6
Aug 11th
problem:
overlap div in IE6, z index is not working correctly in IE6
solution:
- put the relative position in "wrapper" div
- for the overlaped div, put on absolute positions
css code example:
#wrapper{ position: relative; }
#box1 { position: absolute; top: 150px; left:60px;width: 200px; height: 200px; background-color: yellow; z-index: 20; }
#box2 {position: absolute; top: 100px; left: 0px;width: 200px; height: 200px; background-color: lime; z-index: 10; }
html code example:
<div id="wrapper">
<div id="box1">
<p>
This box should be on top</p>
</div>
<div id="box2">
<p>
box 2</p>
</div>
</div>
calculating age in sql
Aug 3rd
problem:
display age with sql command
solution:
sql command:
SELECT DATEDIFF(mm, dateOfBirth, GETDATE()) / 12 AS age
FROM someTable
it wil display age ^^V
birthday reminder list asp.net
Aug 3rd
problem:
displaying list of bday boy/girl in next (30/ according to your own choice ) days from the current date.
solution:
im using the sql to select the date of birth, for displaying, you can use whatever you want, like gridview, datalist etc.
hereby the sql command:
SELECT DateOfBirth
FROM someTablename
WHERE (DateOfBirth < GETDATE()) AND (DATEDIFF(d, GETDATE(), DATEADD(yy, DATEDIFF(yy, DateOfBirth, GETDATE()), DateOfBirth)) BETWEEN
0 AND 30)
it will return the list of date of birth from the current date.
for reference of the sql command:
http://msdn.microsoft.com/en-us/library/aa258269%28SQL.80%29.aspx
embedding flash in server control
Jun 29th
Problem:
When you got your website (aspx website), especially when you already put url rewriting, you want to embed flash ( doesnt matter if its swf or flv)
You need to have relative path, starting with ("~/" ) in the url.
Solution:
you can put the code in your server control, so it will be easier to integrate
FlashPlayer.ascx
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=10,0,0,0" width="745" height="181" id="header" align="middle">
<param name="allowScriptAccess" value="sameDomain" />
<param name="allowFullScreen" value="false" />
<param name="movie" value='<asp:Literal ID="Literal1" runat="server"></asp:Literal>' /><param name="quality" value="high" /><param name="bgcolor" value="#ffffff" />
<embed src='<asp:Literal ID="Literal2" runat="server"></asp:Literal>' quality="high" bgcolor="#ffffff" width="745" height="181" name="header" align="middle" allowScriptAccess="sameDomain" allowFullScreen="false" type="application/x-shockwave-flash" pluginspage="http://www.adobe.com/go/getflashplayer_nl" />
</object>
and in the FlashPlayer.ascx.cs
protected void Page_Load(object sender, EventArgs e)
{
Literal1.Text = Page.ResolveUrl("~/yourpath");
Literal2.Text = Page.ResolveUrl("~/yourpath");
}
and you will got flash playing! enjoy ^_^
================================
thank to Marc Neeft, hereby his input :
it would be even more powerful when you add the movieUrl, width and height as properties of the usercontrol:
private string movieUrl = String.empty;
private int movieWidth = 0;
private int movieHeight = 0;
protected void Page_Load(object sender, EventArgs e)
{
// todo: check if url, width and height are set, if not, throw exception
Literal1.Text = Page.ResolveUrl(movieUrl);
Literal2.Text = Page.ResolveUrl(movieUrl);
Literal3.Text = movieWidth;
Literal4.Text = movieHeight;
}
public string MovieUrl
{
get { return movieUrl; }
set { movieUrl = value; }
}
public string MovieWidth
{
get { return movieWidth; }
set { movieWidth = value; }
}
public int MovieHeight
{
get { return movieHeight; }
set { movieHeight = value; }
}
Of course you need to add the 2 extra literals and the errorchecking yourself but you get the general idea.
<uc:FlashPlayer id="Flashplayer" runat="server" MovieUrl="~/flash
/movie.flv
" MovieWidth="300" MovieHeight="150" />
Repeater inside repeater asp net
Jun 9th
Problem :
Putting repeater inside repeater and take ID of parent repeater to bind the datasourse.
Solution:
hereby the example of code:
in .aspx
<asp:Repeater ID="Repeater2" runat="server"
onitemdatabound="Repeater2_ItemDataBound">
<ItemTemplate>
<asp:Label ID="Label2" runat="server" Text='<%# Eval("Tag") %>'></asp:Label></asp:HyperLink>
<asp:Repeater ID="Repeater1" runat="server">
<ItemTemplate>
(<asp:Label ID="CountID" runat="server" Text='<%# Eval("Expr1") %>'></asp:Label>)
</ItemTemplate>
</asp:Repeater>
<br />
</ItemTemplate>
</asp:Repeater>
in .aspx cs
private DataTable getDataTableforRepeater2(int TagID)
{
SqlConnection conn = new SqlConnection();
conn.ConnectionString = ConfigurationManager.ConnectionStrings["yourconnectionName"].ConnectionString;
SqlCommand command = new SqlCommand();
command.Connection = conn;
command.CommandText = "sql command";
DataTable t = new DataTable();
SqlDataAdapter adapter = new SqlDataAdapter();
adapter.SelectCommand = command;
adapter.Fill(t);
return t;
}
protected void Repeater2_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
Repeater Repeater1 = e.Item.FindControl("Repeater1") as Repeater;
int TagID = int.Parse(DataBinder.Eval(e.Item.DataItem, "TagID").ToString());
if (TagID != null)
{
DataTable t = getDataTableforRepeater2(TagID);
if (t.Rows.Count > 0)
{
Repeater1.DataSource = t;
Repeater1.DataBind();
}
}
}