Doorzoek het forum

Trefwoord

Welkom bij Joomla!NL

Om alle mogelijkheden van dit forum te kunnen gebruiken, moet je je eerst registreren.

× Als je zelf een extensie ontwikkelt, kan je hier je vragen stellen.

opgelost ->get functies in een module

22 mrt 2015 01:29 22 mrt 2015 09:47 door Astrid.
Heeft onderwerp gestart
opgelost ->get functies in een module #1
Hallo, ik ben bezig met een module een zeer simpel maar nu vraag ik me af wat ik mis.
wat ik kan niks ophalen met de get functie zie hierbij mijn voorbeelden.
de email wil niet versturen tenzij ik het email adres niet via get->...... ophaal maar gewoon onderin de mailto direct zet maar ik zil juist een venster bij het module admin scherm om een email adres te kunnen veranderen vandaar via de get->....

PS: mocht u mij kunnen helpen zou je dan zo vriendelijk willen zijn op oom de pagina te noemen waar ik het moet plakken bv.

ik ben echt een beginner ! bedankt


helper.php
<?php

$mailto = $params->get('mailto', 'info@sample.nl');	 // deze via de xml  


class modcontactHelper
{

    public static function getVerstuurEmail()   {

		
	 
		  // chack post  
			$nawok = false;
			if (isset($_POST['submitform'])) {
				if (isset($_POST['naam'])) { $naam = $_POST['naam']; }
				if (isset($_POST['email'])) { $email = $_POST['email']; }
				if (isset($_POST['afdeling'])) { $afdeling = $_POST['afdeling']; }
				if (isset($_POST['bericht'])) { $bericht = $_POST['bericht']; }

				$nawok = true;
			 
				
			if ($nawok) {
				// set datum 
				$datum = date("d.m.Y H:i"); 

				// set ip 
				$ip = $_SERVER['REMOTE_ADDR']; 

				print '<div class="alert alert-success" role="alert"> Uw gegevens zijn correct ontvangen.</div>';

				
				$inhoud_mail =  "Uw hebt de volgende NAW-gegevens verstuurd:" . "\n\n"; 
				$inhoud_mail .=  "Naam: " . $naam . "\n\n"; 
				$inhoud_mail .=  "email: " . $email . "\n\n";
				$inhoud_mail .=  "afdeling: " . $afdeling . "\n\n";
				$inhoud_mail .=  "bericht: " . $bericht . "\n\n"; 
				
				$inhoud_mail .= "Verstuurd op " . $datum . " via het ip " . $ip . "\n\n";  

				$headers = "From: $email" . "\r\n";

				

				
			mail($mailto, $afdeling, $inhoud_mail ,$headers);
			}
			else {
				print '<div class="alert alert-danger" role="alert"> Uw gegevens zijn niet corret ontvangen.</div>';
			}
		  
		}
    }
	 
	 
}
?>



<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" name="contactform" >
  
	<div class="form-group"><label>Naam</label>
	 <input class="form-control" type="text" name="naam" id="naam" placeholder="Enter naam" >
	 </div>
	 
	<div class="form-group">
		<label>Email </label>
		<input class="form-control" type="email" name="email" id="email" placeholder="Enter email" >
	</div>

	<!-- Select Basic -->
	<div class="control-group">
	  <label class="control-label" for="afdeling">Select Afdeling</label>
	  <div class="controls">
		 <select id="afdeling" name="afdeling" class="form-control">
				<option value="poppen">poppen</option>
				<option value="toys">toys</option>
				<option value="goed doel">goed doel</option>
				<option value="Algemeen">Algemeen</option>
		 </select>
	  </div>
	</div>

	<div class="form-group"><label>Bericht</label>
		<textarea rows="5" placeholder="Uw bericht" name="bericht" id="bericht" class="form-control"></textarea>
	</div>

	<input name="submitform" type="submit" class="btn btn-default" value="Verstuur deze gegevens" />

</form>


mod_contact
<?php
// no direct access
defined('_JEXEC') or die;

// Include the syndicate functions only once
require_once( dirname(__FILE__) . '/helper.php' );
 
$VerstuurEmail = modcontactHelper::getVerstuurEmail();
require( JModuleHelper::getLayoutPath('mod_contact'));
?>

xml
<?xml version="1.0" encoding="utf-8"?>
<extension type="module" version="3.1.0" client="site" method="upgrade">
    <name>sample contact</name>
    <author>sample</author>
    <version>1.0.0</version>
    <description>A simple contact module.</description>
    <files>
        <filename>mod_contact.xml</filename>
        <filename module="mod_contact">mod_contact.php</filename>
        <filename>index.html</filename>
        <filename>helper.php</filename>
        <filename>tmpl/default.php</filename>
        <filename>tmpl/index.html</filename>
    </files>
    <config>
	 	<fields name="params">
			<fieldset name="params" label="basis module" description=" " >
				<field type="text" name="mailto" label="mailto" description="mailto" default="info@sample.nl" /> 
			</fieldset>
		</fields>
    </config>
</extension>




default.php
<?php 
// No direct access
defined('_JEXEC') or die; ?>
<?php echo $VerstuurEmail; ?>

Edit Jelle.D: Ik heb de code tussen codetags geplaatst, volgende keer graag zelf doen.
accound
Joomla!NL ontdekker
Joomla!NL ontdekker
Berichten: 34
Lees meer
22 mrt 2015 09:25
opgelost ->get functies in een module #2
Goedemorgen,

Zoals ik het nu zie, is dit een algemeen script wat nog niet voor Joomla! geschikt is.
Maar het kan ook zijn dat je maar een stukje van je code laat zien. Want een component heeft normaal gesproken een MVC structuur (Model View Controller)


Je geeft aan :"mocht u mij kunnen helpen zou je dan zo vriendelijk willen zijn op oom de pagina te noemen waar ik het moet plakken bv."..
Helaas is het niet alleen maar een stukje plakken. Er komt meer bij kijken.

Mijn advies zou zijn om een gratis mailform extentie vanuit JJED te te downloaden.
JED kun je hier vinden LINK
esorone
Joomla!NL ontdekker
Joomla!NL ontdekker
Berichten: 22
Lees meer
22 mrt 2015 09:31 22 mrt 2015 09:42 door Juliank92.
opgelost ->get functies in een module #3
Voor zover ik zie maak je nergens een definitie naar de variabele params?
De aanroep zou volgens mij $this->params->get('mailto', 'Dit e-mailadres wordt beveiligd tegen spambots. JavaScript dient ingeschakeld te zijn om het te bekijken.'); moeten zijn.

@esorone, dat het geen mvc model is betekent niet dat het niet kan werken. Voor kleine dingen loont het vaak de moeite ook niet om mvc toe te passen.

Edit: als het niet werkt kan het zo zijn dat je Jfactory nog moet definiëren. Probeer ook te kijken wat er in de variabelen staat die je gebruikt, bijvoorbeeld:
echo('<pre>');
print_r($var);
echo('</pre>');

Groetjes, Julian.

Voordat je een vraag post, gebruik eerst de zoekfunctie van ons forum eens.
Vragen via dit Forum (niet per PM of E-mail)
Juliank92
Algemeen Moderator
Algemeen Moderator
Berichten: 1734
Lees meer
22 mrt 2015 11:37
opgelost ->get functies in een module #4
@juliank92,

Eens :-)
Vandaar dat ik ook schreef:"normaal gesproken" :-)
Wel vind ik het persoonlijk prettig om de structuur de volgen. Dit helpt mij (persoonlijke mening) om later een component verder uit te werken.

On Topic,
Als ik het goed lees, dan wil accound alleen een formulier bouwen met een aantal opties.
Dan denk ik dat er erg goede gratis extenties zijn, die dat goed kunnen. Zeer zeker omdat hij aangeeft dat ie "echt een beginner is"

Maar als Accound zich wil bekwamen in het bouwen van Modules, dan is dit natuurlijk een goede start om te beginnen. Wel is het zo dat het bouwen voor Joomla een stijle leercurver heeft. Vandaar mijn advies.

Gr
esorone
Joomla!NL ontdekker
Joomla!NL ontdekker
Berichten: 22
Lees meer
22 mrt 2015 15:04 22 mrt 2015 15:10 door accound.
Heeft onderwerp gestart
opgelost ->get functies in een module #5
beste allemaal,
bedankt voor de aandacht. mijn stuktuur is volgens mij goed.

-tmpl
-helper
-index.html
-mod_contact
-mod_contact.xml

tevens kan ik de module installeren en werkt het ook nog xd echter kan je zien in de xml dat ik iets wil mee geven via de
$this->params->get echter dit werkt niet ik krijg niks terug en volgens mij mis ik zoals bovenstaand genoemt iets met Jfactory .

dit is echt het laaste meen ik want als ik het email adres wat ik via $this->params->get wil ontvangen niat variabel maak maar direct in de mailto('info@.....' zet verstuurt het dee email wel maar dan kan je het email add aleen aanpassen in get script en dat was juist niet de bedoeling.

verder ben ik nog steeds een beginner , maar opgeven doe ik niet aangezien een module downloaden ook komt mat backlink
en dat is mou juist waarom ik een eigemodule ben gaan maken . los daar van lijkt het me leuk om een simele module te kunnen maken.

nogmaals bedankt voor de aandacht en de hulp !

hierbij alle bestanden
drive.google.com/file/d/0B8rNt5w_UMtjS3dybVRJZWZSSzg/view?usp=sharing
accound
Joomla!NL ontdekker
Joomla!NL ontdekker
Berichten: 34
Lees meer
22 mrt 2015 19:56
opgelost ->get functies in een module #6
Hoi,

Commentaar betreffende de structuur, hiermee werd niet de structuur van de mappen bedoeld, maar het MVC model.

Het is inderdaad zoals esorone aangeeft dat het handiger is/was om een bestaande extensie te gebruiken, ook met oog op bijvoorbeeld spam. Dat je een backlink krijgt moet je soms maar voor lief nemen bij een gratis applicatie. Vrijwel altijd kan je een backlink laten verwijderen door de ontwikkelaar, daar staat natuurlijk ook iets tegen over maar goed.

Graag wil ik je ook even wijzen op je manier van coderen, wees een beetje consistent aub. Het ene moment gebruik je bijvoorbeeld tabs, dan spaties, dan spring je helemaal verkeerd in.

Ik zag ook dat je melding van ''Uw gegevens zijn correct ontvangen'' maar bleef staan, heb deze nu zo gemaakt dat deze alleen na een post actie weergegeven wordt.

Ik heb je code een beetje aangepast en hier neergezet.

Groetjes, Julian.

Voordat je een vraag post, gebruik eerst de zoekfunctie van ons forum eens.
Vragen via dit Forum (niet per PM of E-mail)
Juliank92
Algemeen Moderator
Algemeen Moderator
Berichten: 1734
Lees meer
22 mrt 2015 20:11 22 mrt 2015 20:13 door accound.
Heeft onderwerp gestart
opgelost ->get functies in een module #7
hehe studiebol je heb gelijk.

maar waarom wil je tabs het was toch een .min.html bestand, jaja wat tabs te veel :P
tnx opgelost lijkt precies wat ik bedoel effe testen nog
accound
Joomla!NL ontdekker
Joomla!NL ontdekker
Berichten: 34
Lees meer
Moderators: PeterJuliank92JelleRomke
Tijd voor maken pagina: 0.169 seconden

Wil je Joomla!NL steunen?

Steun Joomla!NLAlle teamleden werken enthousiast, op vrijwillige basis, mee aan Joomla!NL. Maar een website met forum kost nu eenmaal geld. Dus als je Joomla!NL wilt steunen, dan kan dat, graag zelfs!

Lees hier meer informatie

Joomla!NL op Twitter

Vandaag is Joomla! 3.9.24 vrijgegeven. Het bevat enkele veiligheidsreparaties en een groot aantal verbeteringen. Ma… https://t.co/l63WFZygT3

De naam Joomla!® en logo worden gebruikt onder een beperkte licentie met toestemming van Open Source Matters.
Joomlanl.nl is niet verbonden aan en is geen onderdeel van Open Source Matters, Inc, of het Joomla! project.

© 2021 - Joomla!NL | Gehost door Wned