Skip to content

Instantly share code, notes, and snippets.

@yahyaahrika
Created June 4, 2021 17:08
Show Gist options
  • Save yahyaahrika/9dcf6ca3567252d3240fca072e1da975 to your computer and use it in GitHub Desktop.
Save yahyaahrika/9dcf6ca3567252d3240fca072e1da975 to your computer and use it in GitHub Desktop.
make loop x element each have input to insert value to Db convert
[HttpPost]
public ActionResult Create(string data ,int? idwebsite , DateTime? datetime)
{
if (ModelState.IsValid)
{
var item = data.Split('&');
string[] parm = { };
var _items = new List<KeyValuePair<string, string>>();
foreach (var it in item)
{
parm = it.Split('=');
// key => value
_items.Add(new KeyValuePair<string, string>(parm[0], parm[1]));
}
foreach (var item2 in _items)
{
string[] info = item2.Key.Split('-');
int idGebit = int.Parse(info[0]) ;
string nameGebit = info[1];
// html urldecode
// convert coasten to int check if empty replace with 0
double strcoasten = double.Parse(HttpUtility.UrlDecode(item2.Value));
double coasten = 0;
if (String.IsNullOrEmpty(strcoasten.ToString()))
{
coasten = 0;
}
else
{
coasten = strcoasten;
}
// insert into table gebits_coasten
// parm: @nameGebit @idwebsite @Coasten
gebits_coasten d2 = new gebits_coasten();
d2.gebitname = nameGebit;
d2.website = idwebsite;
d2.coasten = coasten;
db.gebits_coasten.Add(d2);
db.SaveChanges();
// insert costenday yesterday date
costenday cs2 = new costenday();
// cs2.dayst =
//DateTime.Today.AddDays(-1);
cs2.dayst = datetime;
cs2.gbid = db.gebits_coasten.ToList().Last().id;
db.costendays.Add(cs2);
db.SaveChanges();
}
//db.SaveChanges();
}
//ViewBag.website = new SelectList(db.websites, "id", "nom", gebits_coasten.website);
//gebits_coasten
return RedirectToAction("Index");
}
@model IEnumerable<WebApplication34.gebit>
@{
/**/
ViewBag.Title = "Create";
}
<body>
<h2> @ViewBag.website</h2>
<h4>Account : @ViewBag.AccountAdwords</h4>
<hr />
<div>
<p id="showDateTime" style="font-weight:bold;color:black;font-size:30px;"></p>
</div>
<input class="form-control" type="date" name="datetime" id="datetime" placeholder="Date">
<input type="hidden" id="idwebsite" value="@ViewBag.id" />
<div class="alert alert-success" role="alert" style="display:none;">
This is a success <b>Add</b>
</div>
@using (Html.BeginForm())
{
<div>
<table id="testpdf" class="table">
<thead>
<tr>
<td>
Gebiets
</td>
<td>Coasten</td>
</tr>
</thead>
<tbody>
@foreach (var item in Model)
{
<tr>
<td> @item.nom</td>
<td>
<input required type="text" class="form-control number" name="@item.id-@item.nom" />
</td>
</tr>
}
<input type="hidden" id="data" value="" />
</tbody>
</table>
</div>
<div class="form-group">
<div class="col-md-offset-2 col-md-10">
<input type="submit" value="Create" class="btn btn-danger" />
</div>
</div>
}
<div>
@Html.ActionLink("Back to List", "Index")
</div>
@section Scripts {
@Scripts.Render("~/bundles/jqueryval")
@*insert just number accept comma*@
<script src="~/Scripts/jquery.number.js"></script>
<script>
var YesterdayDate = '@DateTime.Today.AddDays(-1).ToString("yyyy-MM-dd")';
$('#datetime').val(YesterdayDate);
$("#datetime").change(function () {
var _date = $('#datetime').val();
console.log(_date);
});
var redirectAfterAdd = "gebits_coasten";
$("form").on("submit", function (event) {
event.preventDefault();
if ($('#datetime').val() == "") {
alert("Error : Date Time is Empty")
return false;
}
$("input[type=submit]").prop("disabled", "true");
var param = $(this).serialize();
$data = decodeURI(param);
console.log($data);
$.ajax({
url: '/gebits_coasten/Create',
dataType: 'json',
type: 'POST',
data: {
data: $data,
datetime: $('#datetime').val(),
idwebsite: $('#idwebsite').val()
},
success: function (result) {
},
error: function (err) {
console.log(err);
}
});
document.location = "/gebits_coasten/Index";
});
</script>
}
</body>
<script src="~/Scripts/jquery.number.js"></script>
<script>
var YesterdayDate = '@DateTime.Today.AddDays(-1).ToString("yyyy-MM-dd")';
$('#datetime').val(YesterdayDate);
$("#datetime").change(function () {
var _date = $('#datetime').val();
console.log(_date);
});
var redirectAfterAdd = "gebits_coasten";
$("form").on("submit", function (event) {
event.preventDefault();
if ($('#datetime').val() == "") {
alert("Error : Date Time is Empty")
return false;
}
$("input[type=submit]").prop("disabled", "true");
var param = $(this).serialize();
$data = decodeURI(param);
console.log($data);
$.ajax({
url: '/gebits_coasten/Create',
dataType: 'json',
type: 'POST',
data: {
data: $data,
datetime: $('#datetime').val(),
idwebsite: $('#idwebsite').val()
},
success: function (result) {
},
error: function (err) {
console.log(err);
}
});
document.location = "/gebits_coasten/Index";
});
</script>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment