Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem Problem s ukladanim do db

Dobrý den chtěl jsem sporvoznit v admin panelu calendar ale mam problem...nepovede se mi to ulozit do db kod je nasledujici

var calendar = $('#calendar').fullCalendar({
header: h,
editable: true,
droppable: true, // this allows things to be dropped onto the calendar !!!
drop: function (date, allDay) { // this function is called when something is dropped

// retrieve the dropped element's stored Event Object
var originalEventObject = $(this).data('eventObject');
// we need to copy it, so that multiple events don't have a reference to the same object
var copiedEventObject = $.extend({}, originalEventObject);

// assign it the date that was reported
copiedEventObject.start = date;
copiedEventObject.allDay = allDay;
copiedEventObject.className = $(this).attr("data-class");

$('#calendar').fullCalendar('renderEvent', copiedEventObject, true);
$.ajax({
type: "POST",
url: "add_events.php",
data: {},
contentType: "application/json",
dataType: "json",
success: function (msg) {
// Replace the div's content with the page method's return.

calendarStoredEvents = $.map(msg.d, function (item) {
return {
title: item.EventTitle,
start: item.start,
id: item.EventID,
className: item.EventclassName
};
});
initializeCalendar(calendarStoredEvents);
}
});

// is the "remove after drop" checkbox checked?
if ($('#drop-remove').is(':checked')) {
// if so, remove the element from the "Draggable Events" list
$(this).remove();
}
},
events: "events.php",

Tendle kod jsem se dopsal. ale neuklada do db vi nekdo jak an to prosim?

$.ajax({
type: "POST",
url: "add_events.php",
data: {},
contentType: "application/json",
dataType: "json",
success: function (msg) {
// Replace the div's content with the page method's return.

calendarStoredEvents = $.map(msg.d, function (item) {
return {
title: item.EventTitle,
start: item.start,
id: item.EventID,
className: item.EventclassName
};
});
initializeCalendar(calendarStoredEvents);
}
});

Předmět Autor Datum
chtěl jsem sporvoznit v admin panelu calendar Co to je admin panel? Součást nějakého tajného redakč…
host 09.02.2014 11:32
host
jj ted jsem to zmenil ma tam bejt add_event.php Ano je to redakcni sytstem. tady je stranka od ka…
Pepik000 09.02.2014 11:34
Pepik000
Pošle se vůbec ten request? Pokud ano, jak ho zpracováváš v PHP?
Wikan 09.02.2014 12:15
Wikan
<?php $title=$_POST['title']; $start=$_POST['start']; $end=$_POST['end']; $allDay="true"; $classNam…
Pepik000 09.02.2014 12:17
Pepik000
V první řadě se podívej na syntaxi příkazu INSERT. Protože ho píšeš, jako by to byl UPDATE. Pak tam…
Wikan 09.02.2014 12:29
Wikan
Ale ten php script mi funguje..to jsem zkousel..kdyz jsme tam dal hodnoty natvrdo...povodne jsem ho…
Pepik000 09.02.2014 12:41
Pepik000
Taky jsem se tě ptal, jestli se ten request vůbec pošle, ale neodpověděl jsi. Tak si budu muset odpo…
Wikan 09.02.2014 12:49
Wikan
Omlouvám se mám stoho hlavu kolem. tak nepošle
Pepik000 09.02.2014 12:50
Pepik000
end mam nastaveny ze je to end=start + den
Pepik000 09.02.2014 12:50
Pepik000
A kde to máš nastavený? Protože v tom kódu to teda nikde není.
Wikan 09.02.2014 12:50
Wikan
U sebe jsme si to anstavil pred chvili..ted jsem to upravil takle,,to end jsem tam nedal <?php $ti…
Pepik000 09.02.2014 12:55
Pepik000
Ale bude asi problem v tom ze se tam ty data vubec neodeslou.
Pepik000 09.02.2014 12:58
Pepik000
Tk ono se to odesílá zapisuje ale já neposílám ty data. zkusil jsem todle ale stejné nic data: 'ti…
Pepik000 09.02.2014 14:06
Pepik000
To už jsem psal před 2 hodinama, že neposíláš žádná data: http://pc.poradna.net/q/view/1178379-probl…
Wikan 09.02.2014 14:55
Wikan
data: 'title='+copiedEventObject.title, ted snazim poslat ale nejde mi to...jsem zacatecnik..dikeju…
Pepik000 09.02.2014 15:43
Pepik000
data: { title: obsah_title, start: obsah_start } Co se konkrétně má poslat, už musíš vědět ty.
Wikan 09.02.2014 16:07
Wikan
Jo to vim....ale to mi nejde,,,ja bych chtel jenom pro zkousku treba neco odelsat..ne promenou ale n…
Pepik000 09.02.2014 16:16
Pepik000
Co znamená "nejde"?
Wikan 09.02.2014 16:28
Wikan
Nezapise se do db..neposle se. neodchyti ho ten script na posilani do db...
Pepik000 09.02.2014 16:30
Pepik000
Tak neodešle nebo nezapíše? Pokud chceš radu, musíš se vyjadřovat přesně.
Wikan 09.02.2014 16:32
Wikan
Neodešle tím pádem ani nezapíše. Zkoušel jsem to takle if($_POST['title']=="") { $title="nejde"; }…
Pepik000 09.02.2014 16:40
Pepik000
Neodešle tím pádem ani nezapíše. Respektive odešle ale prázdný. Já to asi vzdávám.
Wikan 09.02.2014 17:08
Wikan
Zadny data se neodeslou.
Pepik000 09.02.2014 17:09
Pepik000
Jaký máš teď aktuální kód pro odesílání? Nevypisuje to nějakou chybu do konzole?
Wikan 09.02.2014 17:14
Wikan
Zadna chyba <?php if($_POST['title']=="") { $title="nejde"; } else { $title=$_POST['title']; } $al…
Pepik000 09.02.2014 17:18
Pepik000
Pro odesílání, ne pro zpracování. K čemu mi je vidět kód pro zpracování, když se nic nepošle a tedy…
Wikan 09.02.2014 17:25
Wikan
var calendar = $('#calendar').fullCalendar({ header: h, editable: true, droppable: true, // this all…
Pepik000 09.02.2014 17:28
Pepik000
this function is called when something is dropped Zavolá se to jenom v případě, že na ten kalendář…
Wikan 09.02.2014 17:33
Wikan
Ja uz nevim nic asi to mazu...a udelam si ten zakladni kalendar ten uz mam...tka moc dik a omlouvam… poslední
Pepik000 09.02.2014 17:39
Pepik000

<?php

$title=$_POST['title'];
$start=$_POST['start'];
$end=$_POST['end'];
$allDay="true";
$className="label label-important";
// connexion a la base de données
try {
$bdd = new PDO('mysql:host=localhost;db=bshop', '', '');
} catch(Exception $e) {
exit('Impossible de se connecter a la base de données.');
}
$sql = "INSERT INTO evenement SET title='".$title."', start='".$start."',end='".$end."', allDay='".$allDay."',className='".$className."' ";
$q = $bdd->prepare($sql);
$q->execute(array(':title'=>$title, ':start'=>$start, ':end'=>$end, ':allDay'=>$allDay, ':className'=>$className));
?>
Do tabulky se nic nezapise

V první řadě se podívej na syntaxi příkazu INSERT. Protože ho píšeš, jako by to byl UPDATE.
Pak tam máš krásný příklad SQL Injection, což je docela nesmyslné, když tam potom používáš prepare a execute.
A ukládáš tam i "end", ale ten v requestu nikde neposíláš.

Neodešle tím pádem ani nezapíše.

Zkoušel jsem to takle

if($_POST['title']=="")
{
$title="nejde";
}
else
{
$title=$_POST['title'];
}

když je $_POST['title'] prazdny do db se zapise nejde. Tak jsem poznal ze se to ani neodešle. Respektive odešle ale prázdný.

Zadna chyba

<?php

if($_POST['title']=="")
{
$title="nejde";
}
else
{
$title=$_POST['title'];
}
$allDay="true";
$className="label label-important";
var_dump($_POST);
// connexion a la base de données
try {
$bdd = new PDO('mysql:host=localhost;...');
} catch(Exception $e) {
exit('Impossible de se connecter a la base de données.');
}
$sql = "INSERT INTO evenement SET allDay='".$allDay."',className='".$className."',ti tle='".$title."' ";
$q = $bdd->prepare($sql);
$q->execute(array(':allDay'=>$allDay, ':className'=>$className, ':title'=>$title));
?>

var calendar = $('#calendar').fullCalendar({
header: h,
editable: true,
droppable: true, // this allows things to be dropped onto the calendar !!!
drop: function (date, allDay) { // this function is called when something is dropped

// retrieve the dropped element's stored Event Object
var originalEventObject = $(this).data('eventObject');
// we need to copy it, so that multiple events don't have a reference to the same object
var copiedEventObject = $.extend({}, originalEventObject);

// assign it the date that was reported
copiedEventObject.start = date;
copiedEventObject.allDay = allDay;
copiedEventObject.className = $(this).attr("data-class");

$('#calendar').fullCalendar('renderEvent', copiedEventObject, true);
$.ajax({
type: "POST",
url: "add_event.php",
data: {title: "pokus" },
contentType: "application/json",
dataType: "json",
success: function (msg) {
// Replace the div's content with the page method's return.

calendarStoredEvents = $.map(msg.d, function (item) {
return {
title: item.EventTitle,
start: item.start,
id: item.EventID,
className: item.EventclassName
};
});
initializeCalendar(calendarStoredEvents);
}
});

Zpět do poradny Odpovědět na původní otázku Nahoru