Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > Web Development
You last visited: Today at 10:07

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



Verbesserung Gefragt

Discussion on Verbesserung Gefragt within the Web Development forum part of the Coders Den category.

Reply
 
Old   #1
 
Mr.Zoey's Avatar
 
elite*gold: 0
Join Date: Sep 2012
Posts: 774
Received Thanks: 228
Verbesserung Gefragt

Code:
<html>
<head>
<title>Test</title>
</head>
<body>
<h1>Link Adresse(.php)</h1>
<form method="POST" action="">
<input name="a" type="text"><br>
<input name="submit" type="submit" value="Auslesen">
</form>
<?php
$a = $_POST['a'];
$plus = show_source("$a");
$minus = $a-$b;

?>
<h2>Ergebnis:</h2>
<?php echo $plus; ?>

</body>
</html>
Wollte mal wissen ob ich was besser machen kann ?
Ich bin noch neu im Web-Dev und weiß genau das es schrottig geschrieben ist
aber wo raus muss ich achten und so weiter ^^
Mr.Zoey is offline  
Old 03/27/2013, 10:02   #2
 
PseudoPsycho's Avatar
 
elite*gold: 1715
Join Date: Dec 2011
Posts: 672
Received Thanks: 207
Wenn es das bewirken soll, was ich glaube
(nämlich ein Formular anzeigen, wo man eine Zahl eingibt. Und nach dem Versenden das Ergebnis irgendwelcher Berechnungen anzeigen (wo auch immer $b auf einmal herkommt)), dann rate ich dir dazu, dir ein Buch zu kaufen und das durchzuarbeiten oder wenigstens ein Tutorial. Hier bist du jedenfalls falsch, sry.

Und damit du die Tutorials etwas schneller findest:
PseudoPsycho is offline  
Old 03/27/2013, 12:44   #3
 
Mikesch01's Avatar
 
elite*gold: 203
Join Date: Sep 2007
Posts: 732
Received Thanks: 190
PHP Code:
<html>
<head>
<title>Test</title>
</head>
<body>
<h1>Link Adresse(.php)</h1>
<form method="POST" action="">
<input name="a" type="text"><br>
<input name="submit" type="submit" value="Auslesen">
</form>
<?php
$a 
$_POST['a']; //zur Sicherheit würde ich hier sämtliche HTML-Sonderzeichen escapen -> htmlentities($_POST['a'])
$plus show_source($a); //Anführungszeichen müssen nicht gemacht werden, wenn du eine Variable verwendest, die einen String speichert.
$minus $a-$b//?! Was soll das sein?^^

?>
<h2>Ergebnis:</h2>
<?php echo $plus?>

</body>
</html>
Naja, der Zweck ist natürlich sehr beschränkt und sollte eigentlich so auf keinen Fall auf einen Webspace geladen werden (sonst liest dir jeder dein schönes Script aus ).

Im Großen und Ganzen OK, aber da eigentlich kaum Code vorhanden ist, kann man auch schwer sagen, was du besser machen solltest.
Mikesch01 is offline  
Old 03/27/2013, 15:13   #4
 
elite*gold: 0
Join Date: Apr 2005
Posts: 323
Received Thanks: 114
Wenn wir schon mal dabei sind, gewöhn dir möglichst schnell an deinen Variablen und Elementen möglichst aussagekräftige Namen zu geben. Am besten in CamelCase Notation. Die Länge ist dabei nicht so wichtig. Das sähe Beispielsweise so aus:

HTML Code:
<html>
<head>
<title>Test</title>
</head>
<body>

<h1>Link Adresse(.php)</h1>
<form method="POST" action="">
<input name="ersteZahl" type="text"><br>
<input name="submit" type="submit" value="Auslesen">
</form>

<?php
$ersteZahl = $_POST['ersteZahl']; 
$ergebnisPlus = show_source($myNumber); 
$ergebnisMinus = $ersteZahl - $zweiteZahl; 
?>

<h2>Ergebnis:</h2>
<?php echo $ergebnisPlus; ?>
</body>
</html>
Das hilft 1. Dir beim programmieren. 2. Anderen wenn du mal hier im Forum Hilfe suchst. Überleg dir ausserdem ob du durchgehend Englische oder Deutsche Variablen und Methoden Namen verwenden möchtest. Möglichst nicht mischen. Hat keinen technischen Grund, ist nur eine Stilnote
MrPuschel is offline  
Old 03/27/2013, 16:16   #5

 
Synatex's Avatar
 
elite*gold: 25
Join Date: Apr 2010
Posts: 1,009
Received Thanks: 316
Da du hier ja eindeutig mit Zahlen rechnest wäre es für PHP cool zu wissen das es auch wirklich zahlen sind. Dann wird nämlich unnötiger Kram, welcher Sicherheitstechnisch relevant ist, gar nicht erst mit benutzt. Das stellst du an in dem du vor die Variablen ein einfaches (int) packst. Beispiel:

PHP Code:
<?php

$a 
= (int)$_POST['ersteZahl'];

?>
Synatex is offline  
Old 03/27/2013, 17:35   #6
 
PseudoPsycho's Avatar
 
elite*gold: 1715
Join Date: Dec 2011
Posts: 672
Received Thanks: 207
Quote:
Originally Posted by Synatex View Post
Das stellst du an in dem du vor die Variablen ein einfaches (int) packst.
Kann zu Problemen führen... Ich persönlich würd' eher $a=intval($_POST['ersteZahl']); schreiben. Bzw. floatval(), wenn's 'ne Fließkommazahl ist.
PseudoPsycho is offline  
Old 03/27/2013, 19:39   #7

 
Synatex's Avatar
 
elite*gold: 25
Join Date: Apr 2010
Posts: 1,009
Received Thanks: 316
Welches Problem denn Beispielsweise? Intval() ist ne Funktion zum typecasten und int() ist das direkte Typecasten. Abgesehn davon das man bei Intval() eine Basis angeben kann sind keine Unterschiede vorhanden und es wird in 99,99% der Ressourcen im Web als schneller und effizienter empfohlen. Was spricht also dagegen?
Synatex is offline  
Old 03/27/2013, 19:48   #8
 
Mikesch01's Avatar
 
elite*gold: 203
Join Date: Sep 2007
Posts: 732
Received Thanks: 190
Quote:
Originally Posted by Synatex View Post
... es wird in 99,99% der Ressourcen im Web als schneller und effizienter empfohlen. Was spricht also dagegen?
*zustimm*

Sorry für Off-Topic, musste aber mal geklärt werden^^
Mikesch01 is offline  
Thanks
1 User
Old 03/29/2013, 05:11   #9
 
elite*gold: 0
Join Date: Apr 2005
Posts: 323
Received Thanks: 114
Ich muss mal die Spaßbremse spielen.

PHP ist eine Sprache die beherscht. Zwangsweise, denn PHP kennt überhaupt keine explizite Definition. In PHP passieren andauernd on-the-fly-conversions, wenn dies Notwendig ist. PHP prüft anhand der Operanden und der verwendeten Operatoren wie die Operanden evaluiert werden und welcher Typ zurückgegeben wird. Beispiel:integer + float gibt float zurück. Mit dem Cast nehmt ihr PHP diese Arbeit ab.

(Ein cast ist keine Umwandlung, das würdet ihr mit settype() machen. Mit einem cast teilt ihr PHP nur mit wie der Operand behandelt werden soll).

integer + float ist teurer als (float)a + float. Um ein paar Mikrosekunden. Und jetzt fragt euch selbst wie oft ihr schon Anwendungen mit ein paar Millionen Iterationen zur Laufzeit hattet.

Ich kenne kein praktisches Beispiel in dem ein expliziter cast mit PHP notwendig wäre. Es ist richtig das PHP manchmal unerwartete Ergebnisse produziert, der Fehler liegt aber i.d.R. im impliziten Code. Der cast ist also ein workaround. Auch die Lesbarkeit wird von einem (int) cast nicht erhöht. Der Typ einer Variable sollte sich (für den Leser) aus Namen, Kontext und dem PHPDoc ergeben.

Mir ist bewusst das Ihr wisst was ihr tut. Das tut ihr sogar aus den richtigen Gründen, aber bedenkt das PHP nicht C ist und das ein bischen gesunder Menschenverstand nie schadet bevor man sich mit Millisekunden bewirft. Und am wichtigsten, nicht mit casts auf Neulinge zielen ;3
MrPuschel is offline  
Thanks
1 User
Old 03/29/2013, 09:51   #10

 
Synatex's Avatar
 
elite*gold: 25
Join Date: Apr 2010
Posts: 1,009
Received Thanks: 316
Quote:
Ich kenne kein praktisches Beispiel in dem ein expliziter cast mit PHP notwendig wäre.
Ich hatte es im oberen Beispiel vorgeschlagen um den Wert zu escapen. Wenn man weiß das die Anwendung so oder so mit einem Integer arbeiten soll brauch man sich doch keine unnötige Arbeit machen und Funktionen wie is_int() oder htmlspecialchars() drauf anwenden wenn einem das typecasting die Arbeit abnimmt.

Das mit den Millisekunden und der Verarbeitung kam nur nach der Info von PseudoPsycho hinzu.
Synatex is offline  
Old 03/29/2013, 12:38   #11
 
PseudoPsycho's Avatar
 
elite*gold: 1715
Join Date: Dec 2011
Posts: 672
Received Thanks: 207
Quote:
Originally Posted by Synatex View Post
Das mit den Millisekunden und der Verarbeitung kam nur nach der Info von PseudoPsycho hinzu.
Jup. Meine, da irgendwo mal gelesen zu haben, dass (int) $x recht fehleranfällig sei. Wahrscheinlich hab' ich das einfach mit $x+=0, oder so, verwechselt.
Naja, auf die Art wieder 'was dazugelernt (auch wenn's auf die Millisekunden nur im Großen und Ganzen überhaupt ankommt).

Jetzt wieder back to topic?
PseudoPsycho is offline  
Thanks
2 Users
Reply


Similar Threads Similar Threads
[Verbesserung] Gamer PC
05/13/2012 - Hardware Discussions / Questions - 19 Replies
So ok oder Verbesserung und kennt einer einen Tower für ein gamer pc aber net zu teuer ^^ Wird der Pc ehr laut oder leise sein ? Grafikkarte: MSI GTX 680 Twin Frozr Prozessor: Intel core i5 3570k Arbeitspeicher: 8gb Festplatte: 1TB Mainboard: Asrock Z77 Pro 3 Netzkarte: 5000 mbits Netzteil: Be quiet 600-700 Watt
KD verbesserung
03/08/2012 - WarRock Trading - 0 Replies
100 Kills = 1e*g 200 Kills = 2 e*g 300 Kills = 3 e*g die bezahlung ich gib first eiso ihr killt mich wen alles ok abläuft bezahlt ihr ;) wer intresse hat hier reinschreiben oder private nachricht (=:handsdown:
KD verbesserung
03/07/2012 - WarRock Trading - 3 Replies
Biete hier eine Kd verbesserung an: 50 Kills kostenlos zum testen 1 mal.! 200 Kills 1 e*g 300 kills 2 e*g 400 kills 3e*g 500 kills 4 e*G
Bot verbesserung
05/26/2009 - Nostale - 5 Replies
Hallo wie die meisten mein Bot schon kennen suche ich jetz verbesserungen. Ich will wissen was ich verbessern kann und nicht sowas: "Ich will das er dahingeht und mich lvlt" oder sowas "Ich will das der Bot bei xxx HP sich hinsetzt" der bot arbeitet ohne pointer der ist ganz leicht aufgebaut und soll so bleiben
Moblock verbesserung
02/19/2009 - Metin2 - 6 Replies
Hi Leute! ich kenne mich nicht so mit moblock aus und kann auch noch nicht so gut skripten oder so was... kann man nicht den moblock so machen das bei dem druck auf die taste acht alle mobs wie bei nem umhang kommen... ohne das dauer mob lock halt immer nur mal kurz nen moblock aktivieren das es halt auch wie umhänge wirken MfG Zagaris123...=):mofo:



All times are GMT +2. The time now is 10:07.


Powered by vBulletin®
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2024 elitepvpers All Rights Reserved.