Προς το περιεχόμενο

Καλυτερη λύση σε κώδικα php ?


xarda

Προτεινόμενες αναρτήσεις

Δημοσ.

Θα ήθελα να μου προτείνετε την καλύτερη λύση για το παρακάτω προβληματάκι.

 

Εχω κώδικα php όπου με την post απο ενα αρχείο Α στέλνω δεδομένα σε ενα αλλο αρχείο Β.Το Β αρχείο εκτελεί ορισμένες λειτουργίες και δημιουργεί αποτελέσματα.Τα αποτελέσματα αυτα όμως θέλω να εμφανίζονται στην σελίδα Α και όχι να "μενει" στην σελίδα Β.Ποιος είναι ο καλύτερος τρόπος για να γίνει αυτο χωρίς να γίνω "μπακάλης"...

Δημοσ.

Εξαρτάται του τι θες να κάνεις. Το πιο απλό είναι να τα βάλεις όλα σε μια σελίδα και να κάνεις έναν έλεγχο του τύπου

><?php
if (ISSET($_POST['var']))
{
//Κάνεις τις πράξεις σου
}
else
{
//Εμφάνισε τη φόρμα σου
}
?>

Δημοσ.

Εάν κατάλαβα, θέλεις να σπάσεις την εφαρμογή σε τρία ξεχωριστά κομμάτια (MVC εεε; :rolleyes:).

 

1. Διεπαφή

index.php

><html>
<head>
	<meta http-equiv="content-type" content="text/html; charset=iso-8859-7">

	<script type="text/javascript">
	function getHTTPObject()
	{
		xmlhttp = null;

		// code for IE7+, Firefox, Chrome, Opera, Safari
		if (window.XMLHttpRequest)
			xmlhttp = new XMLHttpRequest();

		// code for IE6, IE5
		else
			xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");


		if (xmlhttp == null)
			alert("Your browser does not support AJAX.");

		return xmlhttp;
	}

	function executeCommand()
	{
		input = encodeURIComponent(document.getElementById("input").value);
		opr = document.getElementById("operation").value;

		parameters = "input=" + input + "&operation=" + opr;
		parameters += "&time=" + new Date().getTime();

		request = getHTTPObject();

		request.onreadystatechange = function()
		{
			if(request.readyState == 4 && request.status == 200)
			{
				document.getElementById("result").innerHTML += request.responseText;
			}
		}

		request.open("POST", "afile.php", true);
		request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		request.send(parameters);
		
		
	}
	</script>

</head>


<body>
	<input type="text" id="input" />

	<select id="operation">
		<option value="1">Αλλαγή θέσης χαρακτήρων (Τυχαία)</option>
		<option value="2">Αλλαγή θέσης χαρακτήρων (Αντιστροφή)</option>
	</select>

	<input type="button" value="Εφαρμογή" onclick="executeCommand()" />
	<div id="result"></div>
</body>

</html>

 

2. Λογική - Ροή

afile.php

><?php
include("bfile.php");

if (isset($_POST["input"]))
{
$result = "";

switch ($_POST["operation"])
{
	case 1:
		$result = CharactersRandom($_POST["input"]);
		break;
	case 2:
		$result = CharactersReverse($_POST["input"]);
		break;
}

print($result);
print("<br>");
}

?>

 

 

3. Μηχανισμοί

bfile.php

><?php

function CharactersRandom($string)
{
return str_shuffle($string);
}

function CharactersReverse($string)
{	
return strrev($string);
}

?>

Δημοσ.

Κοίτα για AJAX. Μπορείς μέσα από μία σελίδα να καλείς μία άλλη και να εμφανίζεις τα αποτελέσματα στην πρώτη πάλι.

Ακριβώς.. AJAX είναι αυτό που χρειάζεσαι...

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.

  • Δημιουργία νέου...