file Kérdés Visforms iframe-be helyezése

Több
2018 febr. 15 08:18 #1 Írta: holloro
Visforms iframe-be helyezése téma létrehozva holloro által
Sziasztok!
Használom a Visforms nevű bővitményt J3.8.5-ös oldalamhoz:
lepesradio.hu/
Feladatom, hogy írjak, egy ojan kódot, űrlapot, ami külső weboldalakba is behelyezhető iframe kód által.
Megnéztem a Visforms komponens új táblákat és mezőket hoz létre űrlaponként.
Itt az űrlap amit be akarok ágyazni külső oldalba:
lepesradio.hu/kivansagdoboz/
Ehhez készítettem, egy külső .php fájlt, de akárhogy megírtam nem akar működni.
Az az kapcsolat meg van az adatbázissal, a megjelenítés és az űrlap beküldés megtörténik, de miután elküldöm azt kapom vissza, hogy hiba sajnos az űrlap nem küldhető el.
A kód:
{code}
<?php
include_once 'configuration.php';




header("Content-Type: text/html; charset=iso-8859-2");
?>

<div class="visforms-form" id="visformcontainer">


<div class="alert alert-danger error-note" style="display: none;"></div> <script type="text/javascript">
jQuery(document).ready(function () {
jQuery('#visform1').validate({
submitHandler: function(form)
{
var returnVal = true;
if (window["visform1SubmitAction"] && typeof window["visform1SubmitAction"] !== "undefined") {
returnVal = window["visform1SubmitAction"](this);
}
if (!returnVal) {
return false;
}
form.submit();
jQuery(form).find('input[type="submit"]').prop("disabled", true);
jQuery(form).find('input[type="reset"]').prop("disabled", true);
jQuery(form).find('input[type="image"]').prop("disabled", true);
var div = jQuery("#visform1_processform");
if (div.length) {
jQuery("vispoweredby").hide();
jQuery("#visform1").hide();
div.show();
var elOffset = div.offset().top;
var elHeight = div.height();
var windowHeight = jQuery(window).height();
var offset;

if (elHeight < windowHeight) {
offset = elOffset - ((windowHeight / 2) - (elHeight / 2));
}
else {
offset = elOffset;
}

var speed = 700;
jQuery('html, body').animate({scrollTop: offset}, speed);
}
},
wrapper: "p",
//absolutly necessary when working with tinymce!
ignore: ".ignore",
rules: {
},
messages: {
},
//in accordion view, display a summary message, that form contains errors
errorPlacement: function (error, element) {
var errorfieldid = element.attr("id");
errorfieldid = errorfieldid.replace(/_\d+$/, '_0');
errorfieldid = errorfieldid.replace(/_lat$/, '');
errorfieldid = errorfieldid.replace(/_lng$/, '');
jQuery('#visform1' + ' div.fc-tbx' + errorfieldid).html('');
error.appendTo('#visform1' + ' div.fc-tbx' + errorfieldid);
error.addClass("errorcontainer");
},
});

jQuery('.captcharefresh1').on(
'click', function () {
if (jQuery('#captchacode1')) {
jQuery('#captchacode1').attr('src', 'index.php?option=com_visforms&task=visforms.captcha&sid=' + Math.random() + '&id=1');
}
});
jQuery('#visform1').initVisform({visform : {"fid":"1","initEditor":false,"parentFormId":"visform1","steps":1,"nbFields":5,"summaryLayout":"table","summaryLayoutClass":"","summaryRowLayout":"tr","oSummaryFirstElementLayout":"<td>","cSummaryFirstElementLayout":"<\/td>","oSummarySecondElementLayout":"<td>","cSummarySecondElementLayout":"<\/td>","displaysummarypage":false,"hideemptyfieldsinsummary":false,"fields":"[{\"id\" : 1, \"type\" : \"text\",\"label\":\"Neved:\"},{\"id\" : 2, \"type\" : \"text\",\"label\":\"El\u0151ad\u00f3:\"},{\"id\" : 3, \"type\" : \"text\",\"label\":\"Dal C\u00edm:\"},{\"id\" : 4, \"type\" : \"textarea\",\"label\":\"\u00dczenet:\"},{\"id\" : 5, \"type\" : \"submit\",\"label\":\"Elk\u00fcld\"}]"}, restrictData : {}, userInputs : [
{type : "text" ,label : "field1" , value: "", isDisabled : false, isForbidden: false},
{type : "text" ,label : "field2" , value: "", isDisabled : false, isForbidden: false},
{type : "text" ,label : "field3" , value: "", isDisabled : false, isForbidden: false},
{type : "textarea" ,label : "field4" , value: "", isDisabled : false, isForbidden: false}]});
});
</script>
<?php
if(isset($_POST)) {



$id = stripinput($_POST);
$published = stripinput($_POST);
$created = stripinput($_POST);
$created_by = stripinput($_POST);
$checked_out = stripinput($_POST);
$checked_out_time = stripinput($_POST);
$ipaddress = stripinput($_POST);
$articleid = stripinput($_POST);
$modified = stripinput($_POST);
$modified_by = stripinput($_POST);
$ismfd = stripinput($_POST);
$F4 = "Randihely:<br>";
$F4 .= stripinput($_POST);
$F2 = stripinput($_POST);
$F3 = stripinput($_POST);
$F1 = stripinput($_POST);
$F5 = stripinput($_POST);












$result=dbquery ("INSERT INTO lepes_visforms_1 (id, published, created, created_by, checked_out, checked_out_time, ipaddress, articleid, modified, modified_by, ismfd, F4, F1, F2, F3, F5) VALUES
('".$id."', '".$published."', '".$created."', '".$created_by."', '".$checked_out."', '".$checked_out_time."', '".$ipaddress."', '".$articleid."', '".$modified."', '".$modified_by."', '".$ismfd."', '".$F4."', '".$F2."', '".$F3."', '".$F1."', '".$F5."')");

} else {
echo "<p><strong>You Tube, Google videó stb linkeket ne küldj be, mert ezen kéréseket nem vesszük figyelembe!</strong></p>";
echo "<p><strong>Az előadó és Dalcím mezőket csak akkor töltsd ki ha Kívánság műsor hallható a rádióban, vagy a műsor terv szerint a legközelebbi Kívánság Műsorunkban szeretnéd hallani kedvenc zenéidet!</strong></p> </div>";
echo "<form action='/component/visforms/?task=visforms.send&amp;id=1' method='post' name='visform'
id='visform1'
class='visform '>";
echo "<fieldset class='fieldset-1 active'><div class='field1'><div class='fc-tbxfield1'></div>";
echo "<label class=' visCSSlabel ' id='form1nevedlbl' for='field1'><span class='hasTooltip' title='Kérlek add meg a neved!'>Neved:</span></label><input class=' inputbox visCSSinput ' id='field1' aria-labelledby='form1nevedlbl' name='form1neved' maxlength='100' value='' type='text'/><div class='visCustomText '></div><p class='visCSSclear'><!-- --></p></div>";
echo "<div class='field2'><div class='fc-tbxfield2'></div>";
echo "<label class=' visCSSlabel ' id='form1eloadolbl' for='field2'><span class='hasTooltip' title='Csak akkor add meg ha dalt szeretnél kérni Kívánság műsorok idején!'>Előadó:</span></label><input class=' inputbox visCSSinput ' id='field2' aria-labelledby='form1eloadolbl' name='form1eloado' value='' type='text'/><p class='visCSSclear'><!-- --></p></div><div class='field3'><div class='fc-tbxfield3'></div>
<label class=' visCSSlabel ' id='form1dal-cimlbl' for='field3'><span class='hasTooltip' title='Csak akkor add meg ha dalt akarsz kérni Kívánság műsorunkban!'>Dal Cím:</span></label><input class=' inputbox visCSSinput ' id='field3' aria-labelledby='form1dal-cimlbl' name='form1dal-cim' maxlength='100' value='' type='text'/><p class='visCSSclear'><!-- --></p></div><div class='field4'><div class='fc-tbxfield4'></div><label class=' visCSSlabel ' id='form1uzenetlbl' for='field4'>Üzenet:</label> <textarea class=' inputbox visCSSinput ' id='field4' cols='10' rows='20' aria-labelledby='form1uzenetlbl' name='form1uzenet' maxlength='5000'></textarea>
<p class='visCSSclear'><!-- --></p></div><div class='visBtnCon'><input class='btn ' id='field5' aria-label='Elküld' value='Elküld' name='form1elkuld' type='submit'/>&nbsp;</div></fieldset> <input type='hidden' value='1' name='postid'/>
<input type='hidden' value='pagebreak' name='addSupportedFieldType[]' />
<input type='hidden' value='aHR0cHM6Ly9sZXBlc3JhZGlvLmh1L2luZGV4LnBocD9vcHRpb249Y29tX3Zpc2Zvcm1zJnZpZXc9dmlzZm9ybXMmaWQ9MQ,,' name='return' /> <input type='hidden' name='7950c7fd558fb0dc92757953cc7021ac' value='1' /></form>
<div id='visform1_processform' style='display:none'><div class='processformmessage'>Your submission is being processed. This may take a little time. Thank you for your patience. </div></div>
</div>

</div></div>";

}

?>{/code}
Eredmény:
lepesradio.hu/randihely.php
Ugyan ez a kód csak más cms-hez írva, más sql adatbázishoz működött, ellenőriztem azt is, hogy milyen mezőkkel dolgozik a tábla.
Lényeg, hogy ez egy külső script lenne, melyet iframe-be ágyaznánk és az kldené be ugyan azon adatokat mint amit maga a Joomla Visforms komponense.
Szerintetek miért nem működik?
Ötlet, javaslat?
Esetleg ha valaki tudna, egy helyes javított kódot küldeni azt megköszönném!
Nagyon fontos lenne!
Üdv:
Robi!

Jelentkezz be, hogy te is részt vehess beszélgetésben!

  • kovacshazi
  • kovacshazi profilkép
  • Nem elérhető
  • Joomla mérnök
  • Joomla mérnök
  • Mindent lehet, csak akarni kell
Több
2018 febr. 15 10:00 #2 Írta: kovacshazi
kovacshazi válaszolt a következő témában: Visforms iframe-be helyezése
lepesradio.hu/kivansagdoboz/?tmpl=component
Próbáld meg ezt az URL-t iframeben, elvileg a joomla sablon nélkül kellen megjelennie az űrlapnak.

Segítség Joomla és VirtueMart webáruház készítéséhet, problémák megoldásában
www.webprogramok.hu

Joomladay2013 - Budapest, Hungary
www.joomladay.hu

Jelentkezz be, hogy te is részt vehess beszélgetésben!

Több
2018 febr. 15 13:04 #3 Írta: holloro
holloro válaszolt a következő témában: Visforms iframe-be helyezése
Köszi ez valóban működik viszont egy problémám van még ezzel:
Az oldal ahová be kell hívatnom ezt az űrlapot nem utf8-ban dolgozik ha nem Iso8859-2-ben.
Így ha így húzom át a frame-el akkor ott karakter kódolási hibák lesznek.
Azt meg lehet valahogyan oldani, hogy maga az űrlap megjelenjen viszont egy másik script által amit elmentek pl Notepad ++-szal Iso8859-2-es karakter kódolásban?

Jelentkezz be, hogy te is részt vehess beszélgetésben!

Több
2018 febr. 18 17:49 #4 Írta: holloro
holloro válaszolt a következő témában: Visforms iframe-be helyezése
Sziasztok!
Azt hogy tudom megoldani, hogy adatbázisból lekérdezett infó amit Frontend-en is meg tudok szépen jeleníttetni azt a frontenden adott felhasználó csoport megfelelő jogosultsággal ha bejelentkezik tudja törölni?
Jogosultság meg van, csak azoknak jelennek meg az infók, viszont nem tudok egy törlés gombot beilleszteni a .php fájlba hogy a frontend-ről az frontend data felületen is lehessen a beérkezett infókat törölni egyenként, vagy akár egyszerre.
Ötlet, javaslat, megoldás?
Fontos lenne!
Köszönöm előre is segítségetek!
Üdv:
Robi

Jelentkezz be, hogy te is részt vehess beszélgetésben!