Guten Morgen Leute,
Irgendwie geht die Seite nicht aber den Fehler habe ich bis jetzt noch nicht gefunden könnte jemand von euch mal drüberschauen und mir vllt den Fehler sagen? oder einen Hinweis geben wie ich ihn beheben könnte
Ich danke schonmal im Vorraus =)
PS: Hier mal der Code der Seite wo angesagt wird das es einen Fehler gäbe aber nicht was für einer.
PHP-Code:<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="./css/global">
<head>
<body>
<div id="navigation">
<?php
include("navigation.php");
?>
</div>
<div id="content">
<br>
<a href="./showKunden.php">Zurück</a><br><br>
<?php
$kid ;
// Variable $sendung definieren
$sendung = isset($_POST["sendung"]) ? $_POST["sendung"] : "";
// Formular definieren
$formular = "<form action='formular.php' method='post'>
Sendung: <input type='text' name='sendung' value='$sendung'>
<input type='submit'>
</form>";
// Wurden Daten über $_POST gesendet?
if (isset($_POST["sendung"])) {
// Hier wird die Eingabe überprüft.
if ($_POST["sendung"] == "Ja" OR $_POST["sendung"] == "ja" OR $_POST["sendung"] == "JA") {
echo 'Kunde wurde gelöscht';
echo '<a href="./showKunden.php/deleteK?%24kid=%24kid">';
}
else if ($_POST["sendung"] == "Nein" OR $_POST["sendung"] =="NEIN" OR $_POST["sendung"] == "nein"){
// Die eingabe wird nochmal überprüft wenn keiner der Fälle oben richtig war
// zusammen mit dem Formular ausgegeben.
echo "Kunde wurde nicht gelöscht";
echo "<a href='./showKunden.php'>Zurück</a>";
}
}
else {
// Das Formular wird ausgegeben wenn noch keine
// Daten über $_POST gesendet wurden.
echo $formular;
}
?>
<br>
<a href="./showKunden.php">Zurück</a>
</div>
</body>
</html>
Grüße vom Griechen,
Cybergreek!
everygain Translator - eine Firefox-Erweiterung, damit der Grieche Euch besser versteht
Es wird gesagt das in Zeile 32 ein Fehler wäre aber wo ist den da bitte ein Fehler das ist nur eine Verlinkung und danke für die Schnelle Antwort
Edit:
Ich habe es hinbekommen dafür habe ich jetzt das Problem das wenn ich dann Ja eintippe der Kunde nicht gelöscht wird wie erhofft. Weiß dafür vllt einer einen Hinweis geschweige den Rat.
Ich danke wieder mal im Vorraus =)
Geändert von Maps (18.07.2011 um 11:20 Uhr)
Ich kann den Fehler bei mir nicht nachvollziehen, es kommt wie zu erwarten "Kunde wurde gelöscht".
Ein paar Tipps jedoch, mit denen der Fehler bei dir eventuell auch verschwindet:
- Du weist oben der Variablen $sendung den Wert aus $_POST['sendung'] zu, verwendest sie danach nur noch ein einziges Mal - nämlich im Formular. Das ist etwas sinnfrei und mehr Schreibarbeit.
Verwende doch die Variable auch bei den IFs weiter unten
- Variablen, die aus Formularen kommen und Text enthalten, sollten vorher durch ein trim() gejagt werden. Damit werden sog. Whitespaces (Leerzeichen, Zeilenumbrüche...) am Anfang und am Ende der Variablen entfernt. Dort vermute ich derzeit auch den Fehler bei dir - möglicherweise befindet sich ein Whitespace vor oder nach dem "Ja".
Und "Ja " != "Ja"
- Du machst es dir etwas umständlich, auf die Eingabe "Ja" und "Nein" zu testen. Du könntest einfach für den Vergleich den eingegebenen Text strikt in Groß- oder Kleinbuchstaben "konvertieren", um dann immer nur darauf zu testen. Beispiel:
PHP-Code:
// Das Eingabefeld
$eingabe = $_POST['text'];
// ungewollte Whitespaces entfernen
$eingabe = trim($eingabe);
// alles in Kleinbuchstaben konvertieren
$eingabe = strtolower($eingabe);
if($eingabe == 'ja')
{
echo('Er hat JA eingegeben!!');
}
Zum ursprünglichen Problem - Probier mal bitte diesen Code:
Dort habe ich eingefügt, dass die Eingabe in Kleinbuchstaben konvertiert wird und Whitespaces entfernt werden.PHP-Code:<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="./css/global">
<head>
<body>
<div id="navigation">
<?php
include("navigation.php");
?>
</div>
<div id="content">
<br>
<a href="./showKunden.php">Zurück</a><br><br>
<?php
$kid ;
// Variable $sendung definieren
$sendung = isset($_POST["sendung"]) ? $_POST["sendung"] : "";
// Formular definieren
$formular = "<form action='kunden.php' method='post'>
Sendung: <input type='text' name='sendung' value='$sendung'>
<input type='submit'>
</form>";
// Whitespaces entfernen und in Kleinbuchstaben konvertieren
// (erst nachdem die Variable im Formular verwendet wurde, damit dort nicht nur Kleinbuchstaben stehen)
$sendung = strtolower(trim($sendung));
// Wurden Daten über $_POST gesendet?
if (isset($_POST["sendung"])) {
// Hier wird die Eingabe überprüft.
if ($sendung == "ja") {
echo 'Kunde wurde gelöscht';
echo '<a href="./showKunden.php/deleteK?%24kid=%24kid">';
}
else if ($sendung == "nein"){
// Die eingabe wird nochmal überprüft wenn keiner der Fälle oben richtig war
// zusammen mit dem Formular ausgegeben.
echo "Kunde wurde nicht gelöscht";
echo "<a href='./showKunden.php'>Zurück</a>";
}
}
else {
// Das Formular wird ausgegeben wenn noch keine
// Daten über $_POST gesendet wurden.
echo $formular;
}
?>
<br>
<a href="./showKunden.php">Zurück</a>
</div>
</body>
</html>
Und noch ein kleiner Hinweis zum Schluss:
Fehlermeldungen helfen einfach unglaublich weiter - wenn du eine Fehlermeldung bekommst, kopiere sie einfach hier hinein, das erleichtert die Fehlersuche für uns.
Ich vermute mal ins Blaue: Der Fehler lautete etwa
"Unexpected T_STRING in Dateiname on Line 32" und der Fehler war ein fehlendes Anführungszeichen oder Semikolon in der vorherigen Zeile?![]()
Die Idee hatte ich auch aber hat leider doch nichts gebracht =(.
Ich habe den Code ausprobiert aber wenn ich jetzt ja oder nein eingebe verlinkt er mich einfach wieder auf die Seite showKunden.php wo der Datensatz dann leider immer noch nicht gelöscht ist.
Fehlermeldung kommt jeder nicht mehr =) das Problem ist löschen wie schon gesagt tut er den Datensatz nicht. Er verlinkt mich einfach wieder auf die showKunden.php wo ich ja davor den Datensatz eigentlich löschen wollte.
Aber trotzdem danke für den Versuch
Falls noch jemand eine Idee dazu hätte würde mich sehr über einen Tipp freuen
MfG
Maps
Edit:
Was mich jetzt aber irritiert ist das es bei dir läuft und bei mir nicht .... ich kapier gar nichts mehr![]()
Grüße vom Griechen,
Cybergreek!
everygain Translator - eine Firefox-Erweiterung, damit der Grieche Euch besser versteht
echo '<a href="./showKunden.php/deleteK?%24kid=%24kid">';
damit soll er in der php datei die Function deleteK aufrufen und die Variablen weiter geben und deleteK ist richtig geschrieben keine Angst =) habe die mal direkt ausgeführt und es ging aber so halt nicht in dem Formular.
Edit:
Egal was ich versuche es klappt nicht das Kann doch nicht war sein ist vllt der Funktionsaufrauf von deleteK falsch?![]()
Geändert von Maps (19.07.2011 um 12:37 Uhr)
Ich bin jetzt auf dem Weg es statt mit PHP mit JavaScript zu machen das Problem ist aber ich kann die Löschfunktion ja gar nicht richtig aufrufen da es ja eine PHP(MySQL-Anweisung) ist.
Weiß einer einen Rat?![]()
Welchen Zweck haben jetzt genau die %24kid in deiner URL? %24 entspricht einem Dollarzeichen, aber das "kid" dabei irritiert mich etwas...
Also generell irritiert mich die URL ganz massiv...
Dich irritiert die URL? dann teile ich sie mal auf und sage was ich darunter verstehe =)
./showKunden.php = die Seite showKunden soll geöffnet werden
/deleteK = soll eine Funktion sein in der showKunden Seite
? = brauch man für die Variablen wert zuweisung soweit ich weiß
und %24kid heißt eben die Variable die wiederrum den Wert von sich selber bekommen soll damit der Datensatz mit der kid gelöscht wird.
Also kid = Kundenid die brauche ich damit der Kunde gelöscht wird weil ich das so festgelegt hatte, und die sollte nur dafür da sein das der Parameter vergeben wird aber geht nicht. Aber wie gesagt bin jetzt auf Java umgesprungen und versuche es mit einer Eingabe die Meldung kommt das es gelöscht wird aber gelöscht wird es trotzdem nicht hier mal der Code vllt weiß ja einer von euch weiter
EDIT:PHP-Code:<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="./css/global.css">
<script language="JavaScript" type="text/javascript">
<!--
var d;
function test(){
if(prompt("Wollen Sie den Kunden wirklich Löschen?","")=="Löschen"){
alert("Daten werden gelöscht");
window.location.href="./showKunden.php/deleteK?%24kid=" + $cid;}
else {
alert("Daten wurden nicht gelöscht");};
}
//-->
</script>
</head>
<body>
<div id="navigation">
<?php
include("navigation.php");
?>
</div>
<div id="content">
<br>
<a href="./createKunde.php">Neuen Kunden anlegen</a><br><br>
<?php
show(null, 'kunden');
?>
<br>
<a href="./createKunde.php">Neuen Kunden anlegen</a>
</div>
</body>
</html>
PS: Bei Genauer Ansicht des Ganzem einfach Privat anschreiben dann bekommt ihr den ganzen Code (ist halt geschäftlich) deswegen eigentlich nicht preisgeben
Geändert von Maps (20.07.2011 um 14:05 Uhr)
Hat keiner eine Ahnung wie ich es machen könnte?
Kommt schon bitte ich weiß wirklich keine Lösung bzw habe ich keine Ahnung warum es nicht geht.
MfG
Maps
Guten Tag Leute,
Java ist leicht wenn man es versteht,
genauso wie Mathematik
(a+b)² = a²+2ab+b²
(a-b)² = a²-2ab+b²
(a+b)(a-b) = a²-b²
Tja, ich komme so richtig mit der URL auch nicht mit.
Aber vorweg: den Weg über JavaScript (und das ist nicht Java, wie Du in #10 geschrieben hast!) zu gehen, halte ich nicht für empfehlenswert. Die Funktionalität wird unnötiger Weise auf den (unkontrollierbaren) Browser ausgelagert. Da ist man mit serverbasiertem PHP doch besser dran - zumindest in diesem Umfeld.
Ich würde die URL und die Parameterübergabe anders aufbauen, das klappt eventuell besser. Also beispielsweise:
./showKunden.php?funktion=deleteK&kid=kundennummer
Auf dem Server im PHP-Script würde ich die Funktion auswerten (deleteK), dann die kid abfragen und bei "Zusammenpassen" aller Daten den betreffenden Datensatz löschen.
Thomas
Guten Tag Leute,
Java ist leicht wenn man es versteht,
genauso wie Mathematik
(a+b)² = a²+2ab+b²
(a-b)² = a²-2ab+b²
(a+b)(a-b) = a²-b²
Mmmh... was heißt "kid reingeschrieben"? Steht das "kid" oder "1234" für die Kundennummer? Auf irgend eine Art und Weise muss man ja was Verwertbares bekommen, "kid" würde das wohl nicht sein. Ich komme noch nicht so richtig mit, wie das bei Dir so funktioniert...
Thomas
da ich ja die seite neu laden lasse und einen wert übergebe, übergebe ich kid(wert schon vom aufruf vorher festgelegt) an die variable kid für zum löschen aber den löschbefehl von php konnte ich noch nicht funktionierend einbauen wie ich es wollte, er würde zwar funktionieren aber entweder vor dem neuladen oder beim neuladen somit hätte ich aber immer noch nicht die abfrage davor gehabt und das ist das problem nummer 1 ich will erst die abfrage haben und dann soll er erst löschen wenn der befehl der eingegeben wurde Löschen war.
MfG
Maps
Guten Tag Leute,
Java ist leicht wenn man es versteht,
genauso wie Mathematik
(a+b)² = a²+2ab+b²
(a-b)² = a²-2ab+b²
(a+b)(a-b) = a²-b²
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)